1. 10 Aug, 2021 22 commits
  2. 08 Aug, 2021 9 commits
    • Linus Torvalds's avatar
      Linux 5.14-rc5 · 36a21d51
      Linus Torvalds authored
      36a21d51
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2021-08-08' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cceb6347
      Linus Torvalds authored
      Pull timer fix from Thomas Gleixner:
       "A single timer fix:
      
         - Prevent a memory ordering issue in the timer expiry code which
           makes it possible to observe falsely that the callback has been
           executed already while that's not the case, which violates the
           guarantee of del_timer_sync()"
      
      * tag 'timers-urgent-2021-08-08' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timers: Move clearing of base::timer_running under base:: Lock
      cceb6347
    • Linus Torvalds's avatar
      Merge tag 'sched-urgent-2021-08-08' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 713f0f37
      Linus Torvalds authored
      Pull scheduler fix from Thomas Gleixner:
       "A single scheduler fix:
      
         - Prevent a double enqueue caused by rt_effective_prio() being
           invoked twice in __sched_setscheduler()"
      
      * tag 'sched-urgent-2021-08-08' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/rt: Fix double enqueue caused by rt_effective_prio
      713f0f37
    • Linus Torvalds's avatar
      Merge tag 'perf-urgent-2021-08-08' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 74eedeba
      Linus Torvalds authored
      Pull perf fixes from Thomas Gleixner:
       "A set of perf fixes:
      
         - Correct the permission checks for perf event which send SIGTRAP to
           a different process and clean up that code to be more readable.
      
         - Prevent an out of bound MSR access in the x86 perf code which
           happened due to an incomplete limiting to the actually available
           hardware counters.
      
         - Prevent access to the AMD64_EVENTSEL_HOSTONLY bit when running
           inside a guest.
      
         - Handle small core counter re-enabling correctly by issuing an ACK
           right before reenabling it to prevent a stale PEBS record being
           kept around"
      
      * tag 'perf-urgent-2021-08-08' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/intel: Apply mid ACK for small core
        perf/x86/amd: Don't touch the AMD64_EVENTSEL_HOSTONLY bit inside the guest
        perf/x86: Fix out of bound MSR access
        perf: Refactor permissions check into perf_check_permission()
        perf: Fix required permissions if sigtrap is requested
      74eedeba
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 66745863
      Linus Torvalds authored
      Pull char/misc driver fixes from Greg KH:
       "Here are some small char/misc driver fixes for 5.14-rc5.
      
        They resolve a few regressions that people reported:
      
         - acrn driver fix
      
         - fpga driver fix
      
         - interconnect tiny driver fixes
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'char-misc-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        interconnect: Fix undersized devress_alloc allocation
        interconnect: qcom: icc-rpmh: Add BCMs to commit list in pre_aggregate
        interconnect: qcom: icc-rpmh: Ensure floor BW is enforced for all nodes
        fpga: dfl: fme: Fix cpu hotplug issue in performance reporting
        virt: acrn: Do hcall_destroy_vm() before resource release
        interconnect: Always call pre_aggregate before aggregate
        interconnect: Zero initial BW after sync-state
      66745863
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.14-rc5' of... · 289ef7be
      Linus Torvalds authored
      Merge tag 'driver-core-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core fixes from Greg KH:
       "Here are three tiny driver core and firmware loader fixes for
        5.14-rc5. They are:
      
         - driver core fix for when probing fails
      
         - firmware loader fixes for reported problems.
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'driver-core-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        firmware_loader: fix use-after-free in firmware_fallback_sysfs
        firmware_loader: use -ETIMEDOUT instead of -EAGAIN in fw_load_sysfs_fallback
        drivers core: Fix oops when driver probe fails
      289ef7be
    • Linus Torvalds's avatar
      Merge tag 'staging-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 911c3c5e
      Linus Torvalds authored
      Pull staging driver fixes from Greg KH:
       "Here are a few small staging driver fixes for 5.14-rc5 to resolve some
        reported problems. They include:
      
         - mt7621 driver fix
      
         - rtl8723bs driver fixes
      
         - rtl8712 driver fixes.
      
        Nothing major, just small problems resolved.
      
        All have been in linux-next for a while with no reported issues"
      
      * tag 'staging-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: mt7621-pci: avoid to re-disable clock for those pcies not in use
        staging: rtl8712: error handling refactoring
        staging: rtl8712: get rid of flush_scheduled_work
        staging: rtl8723bs: select CONFIG_CRYPTO_LIB_ARC4
        staging: rtl8723bs: Fix a resource leak in sd_int_dpc
      911c3c5e
    • Linus Torvalds's avatar
      Merge tag 'tty-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 6463e54c
      Linus Torvalds authored
      Pull tty/serial fixes from Greg KH:
       "Here are some small tty/serial driver fixes for 5.14-rc5 to resolve a
        number of reported problems.
      
        They include:
      
         - mips serial driver fixes
      
         - 8250 driver fixes for reported problems
      
         - fsl_lpuart driver fixes
      
         - other tiny driver fixes
      
        All have been in linux-next for a while with no reported problems"
      
      * tag 'tty-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        serial: 8250_pci: Avoid irq sharing for MSI(-X) interrupts.
        serial: 8250_mtk: fix uart corruption issue when rx power off
        tty: serial: fsl_lpuart: fix the wrong return value in lpuart32_get_mctrl
        serial: 8250_pci: Enumerate Elkhart Lake UARTs via dedicated driver
        serial: 8250: fix handle_irq locking
        serial: tegra: Only print FIFO error message when an error occurs
        MIPS: Malta: Do not byte-swap accesses to the CBUS UART
        serial: 8250: Mask out floating 16/32-bit bus bits
        serial: max310x: Unprepare and disable clock in error path
      6463e54c
    • Linus Torvalds's avatar
      Merge tag 'usb-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 6a655547
      Linus Torvalds authored
      Pull USB driver fixes from Greg KH:
       "Here are some small USB driver fixes for 5.14-rc5. They resolve a
        number of small reported issues, including:
      
         - cdnsp driver fixes
      
         - usb serial driver fixes and device id updates
      
         - usb gadget hid fixes
      
         - usb host driver fixes
      
         - usb dwc3 driver fixes
      
         - other usb gadget driver fixes
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'usb-5.14-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (21 commits)
        usb: typec: tcpm: Keep other events when receiving FRS and Sourcing_vbus events
        usb: dwc3: gadget: Avoid runtime resume if disabling pullup
        usb: dwc3: gadget: Use list_replace_init() before traversing lists
        USB: serial: ftdi_sio: add device ID for Auto-M3 OP-COM v2
        USB: serial: pl2303: fix GT type detection
        USB: serial: option: add Telit FD980 composition 0x1056
        USB: serial: pl2303: fix HX type detection
        USB: serial: ch341: fix character loss at high transfer rates
        usb: cdnsp: Fix the IMAN_IE_SET and IMAN_IE_CLEAR macro
        usb: cdnsp: Fixed issue with ZLP
        usb: cdnsp: Fix incorrect supported maximum speed
        usb: cdns3: Fixed incorrect gadget state
        usb: gadget: f_hid: idle uses the highest byte for duration
        Revert "thunderbolt: Hide authorized attribute if router does not support PCIe tunnels"
        usb: otg-fsm: Fix hrtimer list corruption
        usb: host: ohci-at91: suspend/resume ports after/before OHCI accesses
        usb: musb: Fix suspend and resume issues for PHYs on I2C and SPI
        usb: gadget: f_hid: added GET_IDLE and SET_IDLE handlers
        usb: gadget: f_hid: fixed NULL pointer dereference
        usb: gadget: remove leaked entry from udc driver list
        ...
      6a655547
  3. 07 Aug, 2021 6 commits
  4. 06 Aug, 2021 3 commits
    • Vincent Fu's avatar
      kyber: make trace_block_rq call consistent with documentation · fb7b9b02
      Vincent Fu authored
      The kyber ioscheduler calls trace_block_rq_insert() *after* the request
      is added to the queue but the documentation for trace_block_rq_insert()
      says that the call should be made *before* the request is added to the
      queue.  Move the tracepoint for the kyber ioscheduler so that it is
      consistent with the documentation.
      Signed-off-by: default avatarVincent Fu <vincent.fu@samsung.com>
      Link: https://lore.kernel.org/r/20210804194913.10497-1-vincent.fu@samsung.com
      Reviewed by: Adam Manzanares <a.manzanares@samsung.com>
      Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      fb7b9b02
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · c9194f32
      Linus Torvalds authored
      Pull ext4 fixes from Ted Ts'o:
       "A regression fix, bug fix, and a comment cleanup for ext4"
      
      * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
        ext4: fix potential htree corruption when growing large_dir directories
        ext4: remove conflicting comment from __ext4_forget
        ext4: fix potential uninitialized access to retval in kmmpd
      c9194f32
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.14-rc4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 2c4b1ec6
      Linus Torvalds authored
      Pull tracing fixes from Steven Rostedt:
       "Fix tracepoint race between static_call and callback data
      
        As callbacks to a tracepoint are paired with the data that is passed
        in when the callback is registered to the tracepoint, it must have
        that data passed to the callback when the tracepoint is triggered,
        else bad things will happen. To keep the two together, they are both
        assigned to a tracepoint structure and added to an array. The
        tracepoint call site will dereference the structure (via RCU) and call
        the callback in that structure along with the data in that structure.
        This keeps the callback and data tightly coupled.
      
        Because of the overhead that retpolines have on tracepoint callbacks,
        if there's only one callback attached to a tracepoint (a common case),
        then it is called via a static call (code modified to do a direct call
        instead of an indirect call). But to implement this, the data had to
        be decoupled from the callback, as now the callback is implemented via
        a direct call from the static call and not an indirect call from the
        dereferenced structure.
      
        Note, the static call only calls a callback used when there's a single
        callback attached to the tracepoint. If more than one callback is
        attached to the same tracepoint, then the static call will call an
        iterator function that goes back to dereferencing the structure
        keeping the callback and its data tightly coupled again.
      
        Issues can arise when going from 0 callbacks to one, as the static
        call is assigned to the callback, and it must take care that the data
        passed to it is loaded before the static call calls the callback.
        Going from 1 to 2 callbacks is not an issue, as long as the static
        call is updated to the iterator before the tracepoint structure array
        is updated via RCU. Going from 2 to more or back down to 2 is not an
        issue as the iterator can handle all theses cases. But going from 2 to
        1, care must be taken as the static call is now calling a callback and
        the data that is loaded must be the data for that callback.
      
        Care was taken to ensure the callback and data would be in-sync, but
        after a bug was reported, it became clear that not enough was done to
        make sure that was the case. These changes address this.
      
        The first change is to compare the old and new data instead of the old
        and new callback, as it's the data that can corrupt the callback, even
        if the callback is the same (something getting freed).
      
        The next change is to convert these transitions into states, to make
        it easier to know when a synchronization is needed, and to perform
        those synchronizations. The problem with this patch is that it slows
        down disabling all events from under a second, to making it take over
        10 seconds to do the same work. But that is addressed in the final
        patch.
      
        The final patch uses the RCU state functions to keep track of the RCU
        state between the transitions, and only needs to perform the
        synchronization if an RCU synchronization hasn't been done already.
        This brings the performance of disabling all events back to its
        original value. That's because no synchronization is required between
        disabling tracepoints but is required when enabling a tracepoint after
        its been disabled. If an RCU synchronization happens after the
        tracepoint is disabled, and before it is re-enabled, there's no need
        to do the synchronization again.
      
        Both the second and third patch have subtle complexities that they are
        separated into two patches. But because the second patch causes such a
        regression in performance, the third patch adds a "Fixes" tag to the
        second patch, such that the two must be backported together and not
        just the second patch"
      
      * tag 'trace-v5.14-rc4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracepoint: Use rcu get state and cond sync for static call updates
        tracepoint: Fix static call function vs data state mismatch
        tracepoint: static call: Compare data on transition from 2->1 callees
      2c4b1ec6