Skip to content
Permalink
Tree: 69bbe8c72e
Commits on May 27, 2019
  1. vhost, kcov: annotate vhost_worker

    xairy committed Jan 17, 2019
    Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
  2. usb, kcov: annotate hub_event

    xairy committed Jan 17, 2019
    Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
  3. kcov: remote coverage support

    xairy committed Jan 17, 2019
    Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Commits on May 24, 2019
  1. media: smsusb: better handle optional alignment

    mchehab authored and gregkh committed May 24, 2019
    Most Siano devices require an alignment for the response.
    
    Changeset f3be52b0056a ("media: usb: siano: Fix general protection fault in smsusb")
    changed the logic with gets such aligment, but it now produces a
    sparce warning:
    
    drivers/media/usb/siano/smsusb.c: In function 'smsusb_init_device':
    drivers/media/usb/siano/smsusb.c:447:37: warning: 'in_maxp' may be used uninitialized in this function [-Wmaybe-uninitialized]
      447 |   dev->response_alignment = in_maxp - sizeof(struct sms_msg_hdr);
          |                             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    The sparse message itself is bogus, but a broken (or fake) USB
    eeprom could produce a negative value for response_alignment.
    
    So, change the code in order to check if the result is not
    negative.
    
    Fixes: 31e0456 ("media: usb: siano: Fix general protection fault in smsusb")
    CC: <stable@vger.kernel.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Commits on May 22, 2019
  1. xhci: Use %zu for printing size_t type

    fabioestevam authored and gregkh committed May 22, 2019
    Commit 597c56e ("xhci: update bounce buffer with correct sg num")
    caused the following build warnings:
    
    drivers/usb/host/xhci-ring.c:676:19: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'size_t {aka unsigned int}' [-Wformat=]
    
    Use %zu for printing size_t type in order to fix the warnings.
    
    Fixes: 597c56e ("xhci: update bounce buffer with correct sg num")
    Reported-by: kbuild test robot <lkp@intel.com>
    Signed-off-by: Fabio Estevam <festevam@gmail.com>
    Cc: stable <stable@vger.kernel.org>
    Acked-by: Mathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  2. xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic()

    ndreys authored and gregkh committed May 22, 2019
    Xhci_handshake() implements the algorithm already captured by
    readl_poll_timeout_atomic(). Convert the former to use the latter to
    avoid repetition.
    
    Turned out this patch also fixes a bug on the AMD Stoneyridge platform
    where usleep(1) sometimes takes over 10ms.
    This means a 5 second timeout can easily take over 15 seconds which will
    trigger the watchdog and reboot the system.
    
    [Add info about patch fixing a bug to commit message -Mathias]
    Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
    Tested-by: Raul E Rangel <rrangel@chromium.org>
    Reviewed-by: Raul E Rangel <rrangel@chromium.org>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  3. xhci: Fix immediate data transfer if buffer is already DMA mapped

    matnyman authored and gregkh committed May 22, 2019
    xhci immediate data transfer (IDT) support in 5.2-rc1 caused regression
    on various Samsung Exynos boards with ASIX USB 2.0 ethernet dongle.
    
    If the transfer buffer in the URB is already DMA mapped then IDT should
    not be used. urb->transfer_dma will already contain a valid dma address,
    and there is no guarantee the data in urb->transfer_buffer is valid.
    
    The IDT support patch used urb->transfer_dma as a temporary storage,
    copying data from urb->transfer_buffer into it.
    
    Issue was solved by preventing IDT if transfer buffer is already dma
    mapped, and by not using urb->transfer_dma as temporary storage.
    
    Fixes: 33e3935 ("usb: xhci: add Immediate Data Transfer support")
    Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
    Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
    CC: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
    Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  4. usb: xhci: avoid null pointer deref when bos field is NULL

    cschmid-xse authored and gregkh committed May 22, 2019
    With defective USB sticks we see the following error happen:
    usb 1-3: new high-speed USB device number 6 using xhci_hcd
    usb 1-3: device descriptor read/64, error -71
    usb 1-3: device descriptor read/64, error -71
    usb 1-3: new high-speed USB device number 7 using xhci_hcd
    usb 1-3: device descriptor read/64, error -71
    usb 1-3: unable to get BOS descriptor set
    usb 1-3: New USB device found, idVendor=0781, idProduct=5581
    usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    ...
    BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
    
    This comes from the following place:
    [ 1660.215380] IP: xhci_set_usb2_hardware_lpm+0xdf/0x3d0 [xhci_hcd]
    [ 1660.222092] PGD 0 P4D 0
    [ 1660.224918] Oops: 0000 [#1] PREEMPT SMP NOPTI
    [ 1660.425520] CPU: 1 PID: 38 Comm: kworker/1:1 Tainted: P     U  W  O    4.14.67-apl #1
    [ 1660.434277] Workqueue: usb_hub_wq hub_event [usbcore]
    [ 1660.439918] task: ffffa295b6ae4c80 task.stack: ffffad4580150000
    [ 1660.446532] RIP: 0010:xhci_set_usb2_hardware_lpm+0xdf/0x3d0 [xhci_hcd]
    [ 1660.453821] RSP: 0018:ffffad4580153c70 EFLAGS: 00010046
    [ 1660.459655] RAX: 0000000000000000 RBX: ffffa295b4d7c000 RCX: 0000000000000002
    [ 1660.467625] RDX: 0000000000000002 RSI: ffffffff984a55b2 RDI: ffffffff984a55b2
    [ 1660.475586] RBP: ffffad4580153cc8 R08: 0000000000d6520a R09: 0000000000000001
    [ 1660.483556] R10: ffffad4580a004a0 R11: 0000000000000286 R12: ffffa295b4d7c000
    [ 1660.491525] R13: 0000000000010648 R14: ffffa295a84e1800 R15: 0000000000000000
    [ 1660.499494] FS:  0000000000000000(0000) GS:ffffa295bfc80000(0000) knlGS:0000000000000000
    [ 1660.508530] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    [ 1660.514947] CR2: 0000000000000008 CR3: 000000025a114000 CR4: 00000000003406a0
    [ 1660.522917] Call Trace:
    [ 1660.525657]  usb_set_usb2_hardware_lpm+0x3d/0x70 [usbcore]
    [ 1660.531792]  usb_disable_device+0x242/0x260 [usbcore]
    [ 1660.537439]  usb_disconnect+0xc1/0x2b0 [usbcore]
    [ 1660.542600]  hub_event+0x596/0x18f0 [usbcore]
    [ 1660.547467]  ? trace_preempt_on+0xdf/0x100
    [ 1660.552040]  ? process_one_work+0x1c1/0x410
    [ 1660.556708]  process_one_work+0x1d2/0x410
    [ 1660.561184]  ? preempt_count_add.part.3+0x21/0x60
    [ 1660.566436]  worker_thread+0x2d/0x3f0
    [ 1660.570522]  kthread+0x122/0x140
    [ 1660.574123]  ? process_one_work+0x410/0x410
    [ 1660.578792]  ? kthread_create_on_node+0x60/0x60
    [ 1660.583849]  ret_from_fork+0x3a/0x50
    [ 1660.587839] Code: 00 49 89 c3 49 8b 84 24 50 16 00 00 8d 4a ff 48 8d 04 c8 48 89 ca 4c 8b 10 45 8b 6a 04 48 8b 00 48 89 45 c0 49 8b 86 80 03 00 00 <48> 8b 40 08 8b 40 03 0f 1f 44 00 00 45 85 ff 0f 84 81 01 00 00
    [ 1660.608980] RIP: xhci_set_usb2_hardware_lpm+0xdf/0x3d0 [xhci_hcd] RSP: ffffad4580153c70
    [ 1660.617921] CR2: 0000000000000008
    
    Tracking this down shows that udev->bos is NULL in the following code:
    (xhci.c, in xhci_set_usb2_hardware_lpm)
    	field = le32_to_cpu(udev->bos->ext_cap->bmAttributes);  <<<<<<< here
    
    	xhci_dbg(xhci, "%s port %d USB2 hardware LPM\n",
    			enable ? "enable" : "disable", port_num + 1);
    
    	if (enable) {
    		/* Host supports BESL timeout instead of HIRD */
    		if (udev->usb2_hw_lpm_besl_capable) {
    			/* if device doesn't have a preferred BESL value use a
    			 * default one which works with mixed HIRD and BESL
    			 * systems. See XHCI_DEFAULT_BESL definition in xhci.h
    			 */
    			if ((field & USB_BESL_SUPPORT) &&
    			    (field & USB_BESL_BASELINE_VALID))
    				hird = USB_GET_BESL_BASELINE(field);
    			else
    				hird = udev->l1_params.besl;
    
    The failing case is when disabling LPM. So it is sufficient to avoid
    access to udev->bos by moving the instruction into the "enable" clause.
    
    Cc: Stable <stable@vger.kernel.org>
    Signed-off-by: Carsten Schmid <carsten_schmid@mentor.com>
    Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  5. usb: xhci: Fix a potential null pointer dereference in xhci_debugfs_c…

    XidianGeneral authored and gregkh committed May 22, 2019
    …reate_endpoint()
    
    In xhci_debugfs_create_slot(), kzalloc() can fail and
    dev->debugfs_private will be NULL.
    In xhci_debugfs_create_endpoint(), dev->debugfs_private is used without
    any null-pointer check, and can cause a null pointer dereference.
    
    To fix this bug, a null-pointer check is added in
    xhci_debugfs_create_endpoint().
    
    This bug is found by a runtime fuzzing tool named FIZZER written by us.
    
    [subjet line change change, add potential -Mathais]
    Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
    Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  6. xhci: update bounce buffer with correct sg num

    Henry Lin authored and gregkh committed May 22, 2019
    This change fixes a data corruption issue occurred on USB hard disk for
    the case that bounce buffer is used during transferring data.
    
    While updating data between sg list and bounce buffer, current
    implementation passes mapped sg number (urb->num_mapped_sgs) to
    sg_pcopy_from_buffer() and sg_pcopy_to_buffer(). This causes data
    not get copied if target buffer is located in the elements after
    mapped sg elements. This change passes sg number for full list to
    fix issue.
    
    Besides, for copying data from bounce buffer, calling dma_unmap_single()
    on the bounce buffer before copying data to sg list can avoid cache issue.
    
    Fixes: f9c589e ("xhci: TD-fragment, align the unsplittable case with a bounce buffer")
    Cc: <stable@vger.kernel.org> # v4.8+
    Signed-off-by: Henry Lin <henryl@nvidia.com>
    Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  7. media: usb: siano: Fix false-positive "uninitialized variable" warning

    AlanStern authored and gregkh committed May 21, 2019
    GCC complains about an apparently uninitialized variable recently
    added to smsusb_init_device().  It's a false positive, but to silence
    the warning this patch adds a trivial initialization.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Reported-by: kbuild test robot <lkp@intel.com>
    CC: <stable@vger.kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Commits on May 21, 2019
  1. USB: rio500: update Documentation

    oneukum authored and gregkh committed May 9, 2019
    Added the newly added limit and updated the text a bit
    
    Signed-off-by: Oliver Neukum <oneukum@suse.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  2. USB: rio500: simplify locking

    oneukum authored and gregkh committed May 9, 2019
    Admitting that there can be only one device allows us to drop any
    pretense about locking one device or a table of devices.
    
    Signed-off-by: Oliver Neukum <oneukum@suse.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  3. USB: rio500: fix memory leak in close after disconnect

    oneukum authored and gregkh committed May 9, 2019
    If a disconnected device is closed, rio_close() must free
    the buffers.
    
    Signed-off-by: Oliver Neukum <oneukum@suse.com>
    Cc: stable <stable@vger.kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  4. USB: rio500: refuse more than one device at a time

    oneukum authored and gregkh committed May 9, 2019
    This driver is using a global variable. It cannot handle more than
    one device at a time. The issue has been existing since the dawn
    of the driver.
    
    Signed-off-by: Oliver Neukum <oneukum@suse.com>
    Reported-by: syzbot+35f04d136fc975a70da4@syzkaller.appspotmail.com
    Cc: stable <stable@vger.kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  5. usbip: usbip_host: fix BUG: sleeping function called from invalid con…

    Shuah Khan authored and gregkh committed May 2, 2019
    …text
    
    stub_probe() and stub_disconnect() call functions which could call
    sleeping function in invalid context whil holding busid_lock.
    
    Fix the problem by refining the lock holds to short critical sections
    to change the busid_priv fields. This fix restructures the code to
    limit the lock holds in stub_probe() and stub_disconnect().
    
    stub_probe():
    
    [15217.927028] BUG: sleeping function called from invalid context at mm/slab.h:418
    [15217.927038] in_atomic(): 1, irqs_disabled(): 0, pid: 29087, name: usbip
    [15217.927044] 5 locks held by usbip/29087:
    [15217.927047]  #0: 0000000091647f28 (sb_writers#6){....}, at: vfs_write+0x191/0x1c0
    [15217.927062]  #1: 000000008f9ba75b (&of->mutex){....}, at: kernfs_fop_write+0xf7/0x1b0
    [15217.927072]  #2: 00000000872e5b4b (&dev->mutex){....}, at: __device_driver_lock+0x3b/0x50
    [15217.927082]  #3: 00000000e74ececc (&dev->mutex){....}, at: __device_driver_lock+0x46/0x50
    [15217.927090]  #4: 00000000b20abbe0 (&(&busid_table[i].busid_lock)->rlock){....}, at: get_busid_priv+0x48/0x60 [usbip_host]
    [15217.927103] CPU: 3 PID: 29087 Comm: usbip Tainted: G        W         5.1.0-rc6+ #40
    [15217.927106] Hardware name: Dell Inc. OptiPlex 790/0HY9JP, BIOS A18 09/24/2013
    [15217.927109] Call Trace:
    [15217.927118]  dump_stack+0x63/0x85
    [15217.927127]  ___might_sleep+0xff/0x120
    [15217.927133]  __might_sleep+0x4a/0x80
    [15217.927143]  kmem_cache_alloc_trace+0x1aa/0x210
    [15217.927156]  stub_probe+0xe8/0x440 [usbip_host]
    [15217.927171]  usb_probe_device+0x34/0x70
    
    stub_disconnect():
    
    [15279.182478] BUG: sleeping function called from invalid context at kernel/locking/mutex.c:908
    [15279.182487] in_atomic(): 1, irqs_disabled(): 0, pid: 29114, name: usbip
    [15279.182492] 5 locks held by usbip/29114:
    [15279.182494]  #0: 0000000091647f28 (sb_writers#6){....}, at: vfs_write+0x191/0x1c0
    [15279.182506]  #1: 00000000702cf0f3 (&of->mutex){....}, at: kernfs_fop_write+0xf7/0x1b0
    [15279.182514]  #2: 00000000872e5b4b (&dev->mutex){....}, at: __device_driver_lock+0x3b/0x50
    [15279.182522]  #3: 00000000e74ececc (&dev->mutex){....}, at: __device_driver_lock+0x46/0x50
    [15279.182529]  #4: 00000000b20abbe0 (&(&busid_table[i].busid_lock)->rlock){....}, at: get_busid_priv+0x48/0x60 [usbip_host]
    [15279.182541] CPU: 0 PID: 29114 Comm: usbip Tainted: G        W         5.1.0-rc6+ #40
    [15279.182543] Hardware name: Dell Inc. OptiPlex 790/0HY9JP, BIOS A18 09/24/2013
    [15279.182546] Call Trace:
    [15279.182554]  dump_stack+0x63/0x85
    [15279.182561]  ___might_sleep+0xff/0x120
    [15279.182566]  __might_sleep+0x4a/0x80
    [15279.182574]  __mutex_lock+0x55/0x950
    [15279.182582]  ? get_busid_priv+0x48/0x60 [usbip_host]
    [15279.182587]  ? reacquire_held_locks+0xec/0x1a0
    [15279.182591]  ? get_busid_priv+0x48/0x60 [usbip_host]
    [15279.182597]  ? find_held_lock+0x94/0xa0
    [15279.182609]  mutex_lock_nested+0x1b/0x20
    [15279.182614]  ? mutex_lock_nested+0x1b/0x20
    [15279.182618]  kernfs_remove_by_name_ns+0x2a/0x90
    [15279.182625]  sysfs_remove_file_ns+0x15/0x20
    [15279.182629]  device_remove_file+0x19/0x20
    [15279.182634]  stub_disconnect+0x6d/0x180 [usbip_host]
    [15279.182643]  usb_unbind_device+0x27/0x60
    
    Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
    Cc: stable <stable@vger.kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  6. USB: sisusbvga: fix oops in error path of sisusb_probe

    oneukum authored and gregkh committed May 9, 2019
    The pointer used to log a failure of usb_register_dev() must
    be set before the error is logged.
    
    v2: fix that minor is not available before registration
    
    Signed-off-by: oliver Neukum <oneukum@suse.com>
    Reported-by: syzbot+a0cbdbd6d169020c8959@syzkaller.appspotmail.com
    Fixes: 7b5cd5f ("USB: SisUSB2VGA: Convert printk to dev_* macros")
    Cc: stable <stable@vger.kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  7. USB: Add LPM quirk for Surface Dock GigE adapter

    qzed authored and gregkh committed May 16, 2019
    Without USB_QUIRK_NO_LPM ethernet will not work and rtl8152 will
    complain with
    
        r8152 <device...>: Stop submitting intr, status -71
    
    Adding the quirk resolves this. As the dock is externally powered, this
    should not have any drawbacks.
    
    Signed-off-by: Maximilian Luz <luzmaximilian@gmail.com>
    Cc: stable <stable@vger.kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  8. media: usb: siano: Fix general protection fault in smsusb

    AlanStern authored and gregkh committed May 7, 2019
    The syzkaller USB fuzzer found a general-protection-fault bug in the
    smsusb part of the Siano DVB driver.  The fault occurs during probe
    because the driver assumes without checking that the device has both
    IN and OUT endpoints and the IN endpoint is ep1.
    
    By slightly rearranging the driver's initialization code, we can make
    the appropriate checks early on and thus avoid the problem.  If the
    expected endpoints aren't present, the new code safely returns -ENODEV
    from the probe routine.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Reported-and-tested-by: syzbot+53f029db71c19a47325a@syzkaller.appspotmail.com
    CC: <stable@vger.kernel.org>
    Reviewed-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  9. usb: mtu3: fix up undefined reference to usb_debug_root

    Chunfeng Yun authored and gregkh committed May 5, 2019
    When CONFIG_USB is not set, and CONFIG_USB_GADGET is set,
    there is an issue:
    
    ld:
    drivers/usb/mtu3/mtu3_debugfs.o: in function 'ssusb_debugfs_create_root':
    mtu3_debugfs.c:(.text+0xba3): undefined reference to 'usb_debug_root'
    
    usb_debug_root is only built when CONFIG_USB is enabled, so here drop it
    and use NULL instead.
    
    Reported-by: Randy Dunlap <rdunlap@infradead.org>
    Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
    Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  10. USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor

    AlanStern authored and gregkh committed May 13, 2019
    The syzkaller USB fuzzer found a slab-out-of-bounds write bug in the
    USB core, caused by a failure to check the actual size of a BOS
    descriptor.  This patch adds a check to make sure the descriptor is at
    least as large as it is supposed to be, so that the code doesn't
    inadvertently access memory beyond the end of the allocated region
    when assigning to dev->bos->desc->bNumDeviceCaps later on.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Reported-and-tested-by: syzbot+71f1e64501a309fcc012@syzkaller.appspotmail.com
    CC: <stable@vger.kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Commits on May 19, 2019
  1. Linux 5.2-rc1

    torvalds committed May 19, 2019
  2. Merge tag 'upstream-5.2-rc2' of git://git.kernel.org/pub/scm/linux/ke…

    torvalds committed May 19, 2019
    …rnel/git/rw/ubifs
    
    Pull UBIFS fixes from Richard Weinberger:
    
     - build errors wrt xattrs
    
     - mismerge which lead to a wrong Kconfig ifdef
    
     - missing endianness conversion
    
    * tag 'upstream-5.2-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs:
      ubifs: Convert xattr inum to host order
      ubifs: Use correct config name for encryption
      ubifs: Fix build error without CONFIG_UBIFS_FS_XATTR
  3. Merge branch 'akpm' (patches from Andrew)

    torvalds committed May 19, 2019
    Merge yet more updates from Andrew Morton:
     "A few final bits:
    
       - large changes to vmalloc, yielding large performance benefits
    
       - tweak the console-flush-on-panic code
    
       - a few fixes"
    
    * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
      panic: add an option to replay all the printk message in buffer
      initramfs: don't free a non-existent initrd
      fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount
      mm/compaction.c: correct zone boundary handling when isolating pages from a pageblock
      mm/vmap: add DEBUG_AUGMENT_LOWEST_MATCH_CHECK macro
      mm/vmap: add DEBUG_AUGMENT_PROPAGATE_CHECK macro
      mm/vmalloc.c: keep track of free blocks for vmap allocation
  4. Merge tag 'kbuild-v5.2-2' of git://git.kernel.org/pub/scm/linux/kerne…

    torvalds committed May 19, 2019
    …l/git/masahiroy/linux-kbuild
    
    Pull more Kbuild updates from Masahiro Yamada:
    
     - remove unneeded use of cc-option, cc-disable-warning, cc-ldoption
    
     - exclude tracked files from .gitignore
    
     - re-enable -Wint-in-bool-context warning
    
     - refactor samples/Makefile
    
     - stop building immediately if syncconfig fails
    
     - do not sprinkle error messages when $(CC) does not exist
    
     - move arch/alpha/defconfig to the configs subdirectory
    
     - remove crappy header search path manipulation
    
     - add comment lines to .config to clarify the end of menu blocks
    
     - check uniqueness of module names (adding new warnings intentionally)
    
    * tag 'kbuild-v5.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (24 commits)
      kconfig: use 'else ifneq' for Makefile to improve readability
      kbuild: check uniqueness of module names
      kconfig: Terminate menu blocks with a comment in the generated config
      kbuild: add LICENSES to KBUILD_ALLDIRS
      kbuild: remove 'addtree' and 'flags' magic for header search paths
      treewide: prefix header search paths with $(srctree)/
      media: prefix header search paths with $(srctree)/
      media: remove unneeded header search paths
      alpha: move arch/alpha/defconfig to arch/alpha/configs/defconfig
      kbuild: terminate Kconfig when $(CC) or $(LD) is missing
      kbuild: turn auto.conf.cmd into a mandatory include file
      .gitignore: exclude .get_maintainer.ignore and .gitattributes
      kbuild: add all Clang-specific flags unconditionally
      kbuild: Don't try to add '-fcatch-undefined-behavior' flag
      kbuild: add some extra warning flags unconditionally
      kbuild: add -Wvla flag unconditionally
      arch: remove dangling asm-generic wrappers
      samples: guard sub-directories with CONFIG options
      kbuild: re-enable int-in-bool-context warning
      MAINTAINERS: kbuild: Add pattern for scripts/*vmlinux*
      ...
  5. Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/ker…

    torvalds committed May 19, 2019
    …nel/git/wsa/linux
    
    Pull i2c updates from Wolfram Sang:
     "Some I2C core API additions which are kind of simple but enhance error
      checking for users a lot, especially by returning errno now.
    
      There are wrappers to still support the old API but it will be removed
      once all users are converted"
    
    * 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
      i2c: core: add device-managed version of i2c_new_dummy
      i2c: core: improve return value handling of i2c_new_device and i2c_new_dummy
  6. Merge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/lin…

    torvalds committed May 19, 2019
    …ux/kernel/git/tytso/ext4
    
    Pull ext4 fixes from Ted Ts'o:
     "Some bug fixes, and an update to the URL's for the final version of
      Unicode 12.1.0"
    
    * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
      ext4: avoid panic during forced reboot due to aborted journal
      ext4: fix block validity checks for journal inodes using indirect blocks
      unicode: update to Unicode 12.1.0 final
      unicode: add missing check for an error return from utf8lookup()
      ext4: fix miscellaneous sparse warnings
      ext4: unsigned int compared against zero
      ext4: fix use-after-free in dx_release()
      ext4: fix data corruption caused by overlapping unaligned and aligned IO
      jbd2: fix potential double free
      ext4: zero out the unused memory region in the extent tree block
  7. Merge tag '5.2-rc-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6

    torvalds committed May 19, 2019
    Pull cifs fixes from Steve French:
     "Minor cleanup and fixes, one for stable, four rdma (smbdirect)
      related. Also adds SEEK_HOLE support"
    
    * tag '5.2-rc-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
      cifs: add support for SEEK_DATA and SEEK_HOLE
      Fixed https://bugzilla.kernel.org/show_bug.cgi?id=202935 allow write on the same file
      cifs: Allocate memory for all iovs in smb2_ioctl
      cifs: Don't match port on SMBDirect transport
      cifs:smbd Use the correct DMA direction when sending data
      cifs:smbd When reconnecting to server, call smbd_destroy() after all MIDs have been called
      cifs: use the right include for signal_pending()
      smb3: trivial cleanup to smb2ops.c
      cifs: cleanup smb2ops.c and normalize strings
      smb3: display session id in debug data
  8. Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/li…

    torvalds committed May 19, 2019
    …nux/kernel/git/tip/tip
    
    Pull perf tooling updates from Ingo Molnar:
     "perf.data:
    
       - Streaming compression of perf ring buffer into
         PERF_RECORD_COMPRESSED user space records, resulting in ~3-5x
         perf.data file size reduction on variety of tested workloads what
         saves storage space on larger server systems where perf.data size
         can easily reach several tens or even hundreds of GiBs, especially
         when profiling with DWARF-based stacks and tracing of context
         switches.
    
      perf record:
    
       - Improve -user-regs/intr-regs suggestions to overcome errors
    
      perf annotate:
    
       - Remove hist__account_cycles() from callback, speeding up branch
         processing (perf record -b)
    
      perf stat:
    
       - Add a 'percore' event qualifier, e.g.: -e
         cpu/event=0,umask=0x3,percore=1/, that sums up the event counts for
         both hardware threads in a core.
    
         We can already do this with --per-core, but it's often useful to do
         this together with other metrics that are collected per hardware
         thread.
    
         I.e. now its possible to do this per-event, and have it mixed with
         other events not aggregated by core.
    
      arm64:
    
       - Map Brahma-B53 CPUID to cortex-a53 events.
    
       - Add Cortex-A57 and Cortex-A72 events.
    
      csky:
    
       - Add DWARF register mappings for libdw, allowing --call-graph=dwarf
         to work on the C-SKY arch.
    
      x86:
    
       - Add support for recording and printing XMM registers, available,
         for instance, on Icelake.
    
       - Add uncore_upi (Intel's "Ultra Path Interconnect" events) JSON
         support. UPI replaced the Intel QuickPath Interconnect (QPI) in
         Xeon Skylake-SP.
    
      Intel PT:
    
       - Fix instructions sampling rate.
    
       - Timestamp fixes.
    
       - Improve exported-sql-viewer GUI, allowing, for instance, to
         copy'n'paste the trees, useful for e-mailing"
    
    * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (73 commits)
      perf stat: Support 'percore' event qualifier
      perf stat: Factor out aggregate counts printing
      perf tools: Add a 'percore' event qualifier
      perf docs: Add description for stderr
      perf intel-pt: Fix sample timestamp wrt non-taken branches
      perf intel-pt: Fix improved sample timestamp
      perf intel-pt: Fix instructions sampling rate
      perf regs x86: Add X86 specific arch__intr_reg_mask()
      perf parse-regs: Add generic support for arch__intr/user_reg_mask()
      perf parse-regs: Split parse_regs
      perf vendor events arm64: Add Cortex-A57 and Cortex-A72 events
      perf vendor events arm64: Map Brahma-B53 CPUID to cortex-a53 events
      perf vendor events arm64: Remove [[:xdigit:]] wildcard
      perf jevents: Remove unused variable
      perf test zstd: Fixup verbose mode output
      perf tests: Implement Zstd comp/decomp integration test
      perf inject: Enable COMPRESSED record decompression
      perf report: Implement perf.data record decompression
      perf record: Implement -z,--compression_level[=<n>] option
      perf report: Add stub processing of compressed events for -D
      ...
  9. Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/sc…

    torvalds committed May 19, 2019
    …m/linux/kernel/git/tip/tip
    
    Pull clocksource updates from Ingo Molnar:
     "Misc clocksource/clockevent driver updates that came in a bit late but
      are ready for v5.2"
    
    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      misc: atmel_tclib: Do not probe already used TCBs
      clocksource/drivers/timer-atmel-tcb: Convert tc_clksrc_suspend|resume() to static
      clocksource/drivers/tcb_clksrc: Rename the file for consistency
      clocksource/drivers/timer-atmel-pit: Rework Kconfig option
      clocksource/drivers/tcb_clksrc: Move Kconfig option
      ARM: at91: Implement clocksource selection
      clocksource/drivers/tcb_clksrc: Use tcb as sched_clock
      clocksource/drivers/tcb_clksrc: Stop depending on atmel_tclib
      ARM: at91: move SoC specific definitions to SoC folder
      clocksource/drivers/timer-milbeaut: Cleanup common register accesses
      clocksource/drivers/timer-milbeaut: Add shutdown function
      clocksource/drivers/timer-milbeaut: Fix to enable one-shot timer
      clocksource/drivers/tegra: Rework for compensation of suspend time
      clocksource/drivers/sp804: Add COMPILE_TEST to CONFIG_ARM_TIMER_SP804
      clocksource/drivers/sun4i: Add a compatible for suniv
      dt-bindings: timer: Add Allwinner suniv timer
  10. Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/l…

    torvalds committed May 19, 2019
    …inux/kernel/git/tip/tip
    
    Pull IRQ chip updates from Ingo Molnar:
     "A late irqchips update:
    
       - New TI INTR/INTA set of drivers
    
       - Rewrite of the stm32mp1-exti driver as a platform driver
    
       - Update the IOMMU MSI mapping API to be RT friendly
    
       - A number of cleanups and other low impact fixes"
    
    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (34 commits)
      iommu/dma-iommu: Remove iommu_dma_map_msi_msg()
      irqchip/gic-v3-mbi: Don't map the MSI page in mbi_compose_m{b, s}i_msg()
      irqchip/ls-scfg-msi: Don't map the MSI page in ls_scfg_msi_compose_msg()
      irqchip/gic-v3-its: Don't map the MSI page in its_irq_compose_msi_msg()
      irqchip/gicv2m: Don't map the MSI page in gicv2m_compose_msi_msg()
      iommu/dma-iommu: Split iommu_dma_map_msi_msg() in two parts
      genirq/msi: Add a new field in msi_desc to store an IOMMU cookie
      arm64: arch_k3: Enable interrupt controller drivers
      irqchip/ti-sci-inta: Add msi domain support
      soc: ti: Add MSI domain bus support for Interrupt Aggregator
      irqchip/ti-sci-inta: Add support for Interrupt Aggregator driver
      dt-bindings: irqchip: Introduce TISCI Interrupt Aggregator bindings
      irqchip/ti-sci-intr: Add support for Interrupt Router driver
      dt-bindings: irqchip: Introduce TISCI Interrupt router bindings
      gpio: thunderx: Use the default parent apis for {request,release}_resources
      genirq: Introduce irq_chip_{request,release}_resource_parent() apis
      firmware: ti_sci: Add helper apis to manage resources
      firmware: ti_sci: Add RM mapping table for am654
      firmware: ti_sci: Add support for IRQ management
      firmware: ti_sci: Add support for RM core ops
      ...
  11. Merge branch 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/l…

    torvalds committed May 19, 2019
    …inux/kernel/git/tip/tip
    
    Pull EFI fix from Ingo Molnar:
     "Fix an EFI-fb regression that affects certain x86 systems"
    
    * 'efi-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      fbdev/efifb: Ignore framebuffer memmap entries that lack any memory types
  12. Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/…

    torvalds committed May 19, 2019
    …linux/kernel/git/tip/tip
    
    Pull core fixes from Ingo Molnar:
     "This fixes a particularly thorny munmap() bug with MPX, plus fixes a
      host build environment assumption in objtool"
    
    * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      objtool: Allow AR to be overridden with HOSTAR
      x86/mpx, mm/core: Fix recursive munmap() corruption
  13. Merge tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/…

    torvalds committed May 19, 2019
    …git/soc/soc
    
    Pull ARM SoC late updates from Olof Johansson:
     "This is some material that we picked up into our tree late. Most of it
      are smaller fixes and additions, some defconfig updates due to recent
      development, etc.
    
      Code-wise the largest portion is a series of PM updates for the at91
      platform, and those have been in linux-next a while through the at91
      tree before we picked them up"
    
    * tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (29 commits)
      arm64: dts: sprd: Add clock properties for serial devices
      Opt out of scripts/get_maintainer.pl
      ARM: ixp4xx: Remove duplicated include from common.c
      soc: ixp4xx: qmgr: Fix an NULL vs IS_ERR() check in probe
      arm64: tegra: Disable XUSB support on Jetson TX2
      arm64: tegra: Enable SMMU translation for PCI on Tegra186
      arm64: tegra: Fix insecure SMMU users for Tegra186
      arm64: tegra: Select ARM_GIC_PM
      amba: tegra-ahb: Mark PM functions as __maybe_unused
      ARM: dts: logicpd-som-lv: Fix MMC1 card detect
      ARM: mvebu: drop return from void function
      ARM: mvebu: prefix coprocessor operand with p
      ARM: mvebu: drop unnecessary label
      ARM: mvebu: fix a leaked reference by adding missing of_node_put
      ARM: socfpga_defconfig: enable LTC2497
      ARM: mvebu: kirkwood: remove error message when retrieving mac address
      ARM: at91: sama5: make ov2640 as a module
      ARM: OMAP1: ams-delta: fix early boot crash when LED support is disabled
      ARM: at91: remove HAVE_FB_ATMEL for sama5 SoC as they use DRM
      soc/fsl/qe: Fix an error code in qe_pin_request()
      ...
Older
You can’t perform that action at this time.