Skip to content
  1. Dec 14, 2021
    • Johan Hovold's avatar
      USB: serial: cp210x: fix CP2105 GPIO registration · 83b67041
      Johan Hovold authored
      
      
      When generalising GPIO support and adding support for CP2102N, the GPIO
      registration for some CP2105 devices accidentally broke. Specifically,
      when all the pins of a port are in "modem" mode, and thus unavailable
      for GPIO use, the GPIO chip would now be registered without having
      initialised the number of GPIO lines. This would in turn be rejected by
      gpiolib and some errors messages would be printed (but importantly probe
      would still succeed).
      
      Fix this by initialising the number of GPIO lines before registering the
      GPIO chip.
      
      Note that as for the other device types, and as when all CP2105 pins are
      muxed for LED function, the GPIO chip is registered also when no pins
      are available for GPIO use.
      
      Reported-by: default avatarMaarten Brock <m.brock@vanmierlo.com>
      Link: https://lore.kernel.org/r/5eb560c81d2ea1a2b4602a92d9f48a89@vanmierlo.com
      Fixes: c8acfe0a
      
       ("USB: serial: cp210x: implement GPIO support for CP2102N")
      Cc: stable@vger.kernel.org      # 4.19
      Cc: Karoly Pados <pados@pados.hu>
      Link: https://lore.kernel.org/r/20211126094348.31698-1-johan@kernel.org
      Reviewed-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Tested-by: default avatarMaarten Brock <m.brock@vanmierlo.com>
      Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
      83b67041
  2. Dec 13, 2021
    • Linus Torvalds's avatar
      Linux 5.16-rc5 · 2585cf9d
      Linus Torvalds authored
      2585cf9d
    • Linus Torvalds's avatar
      Merge tag 'usb-5.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 90d9fbc1
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are some small USB fixes for 5.16-rc5.  They include:
      
         - gadget driver fixes for reported issues
      
         - xhci fixes for reported problems.
      
         - config endpoint parsing fixes for where we got bitfields wrong
      
        Most of these have been in linux-next, the remaining few were not, but
        got lots of local testing in my systems and in some cloud testing
        infrastructures"
      
      * tag 'usb-5.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: core: config: using bit mask instead of individual bits
        usb: core: config: fix validation of wMaxPacketValue entries
        USB: gadget: zero allocate endpoint 0 buffers
        USB: gadget: detect too-big endpoint 0 requests
        xhci: avoid race between disable slot command and host runtime suspend
        xhci: Remove CONFIG_USB_DEFAULT_PERSIST to prevent xHCI from runtime suspending
        Revert "usb: dwc3: dwc3-qcom: Enable tx-fifo-resize property by default"
      90d9fbc1
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 8d7ed104
      Linus Torvalds authored
      Pull char/misc driver fixes from Greg KH:
       "Here are a bunch of small char/misc and other driver subsystem fixes.
      
        Included in here are:
      
         - iio driver fixes for reported problems
      
         - phy driver fixes for a number of reported problems
      
         - mhi resume bugfix for broken hardware
      
         - nvmem driver fix
      
         - rtsx driver fix for irq issues
      
         - fastrpc packet parsing fix
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'char-misc-5.16-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (33 commits)
        bus: mhi: core: Add support for forced PM resume
        iio: trigger: stm32-timer: fix MODULE_ALIAS
        misc: rtsx: Avoid mangling IRQ during runtime PM
        nvmem: eeprom: at25: fix FRAM byte_len
        misc: fastrpc: fix improper packet size calculation
        MAINTAINERS: add maintainer for Qualcomm FastRPC driver
        bus: mhi: pci_generic: Fix device recovery failed issue
        iio: adc: stm32: fix null pointer on defer_probe error
        phy: HiSilicon: Fix copy and paste bug in error handling
        dt-bindings: phy: zynqmp-psgtr: fix USB phy name
        phy: ti: omap-usb2: Fix the kernel-doc style
        phy: qualcomm: ipq806x-usb: Fix kernel-doc style
        iio: at91-sama5d2: Fix incorrect sign extension
        iio: adc: axp20x_adc: fix charging current reporting on AXP22x
        iio: gyro: adxrs290: fix data signedness
        phy: ti: tusb1210: Fix the kernel-doc warn
        phy: qualcomm: usb-hsic: Fix the kernel-doc warn
        phy: qualcomm: qmp: Add missing struct documentation
        phy: mvebu-cp110-utmi: Fix kernel-doc warns
        iio: ad7768-1: Call iio_trigger_notify_done() on error
        ...
      8d7ed104
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2021-12-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c7fc5126
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "Two fixes for clock chip drivers:
      
         - A regression fix for the Designware APB timer. A recent change to
           the error checking code transformed the error condition wrongly so
           it turned into a fail if good condition.
      
         - Fix a clang build fail of the ARM architected timer driver"
      
      * tag 'timers-urgent-2021-12-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource/drivers/arm_arch_timer: Force inlining of erratum_set_next_event_generic()
        clocksource/drivers/dw_apb_timer_of: Fix probe failure
      c7fc5126
    • Linus Torvalds's avatar
      Merge tag 'irq-urgent-2021-12-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 82d2ef45
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
       "A set of interrupt chip driver fixes:
      
         - Fix the multi vector MSI allocation on Armada 370XP
      
         - Do interrupt acknowledgement correctly in the aspeed-scu driver
      
         - Make the IPR register offset correct in the NVIC driver
      
         - Make redistribution table flushing correct by issueing a SYNC
           command to ensure that the invalidation command has been executed
      
         - Plug a device tree node reference leak in the bcm7210-l2 driver
      
         - Trivial fixes in the MIPS GIC and the Apple AIC drivers"
      
      * tag 'irq-urgent-2021-12-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/irq-bcm7120-l2: Add put_device() after of_find_device_by_node()
        irqchip/irq-gic-v3-its.c: Force synchronisation when issuing INVALL
        irqchip/apple-aic: Mark aic_init_smp() as __init
        irqchip: nvic: Fix offset for Interrupt Priority Offsets
        irqchip/mips-gic: Use bitfield helpers
        irqchip/aspeed-scu: Replace update_bits with write_bits.
        irqchip/armada-370-xp: Fix support for Multi-MSI interrupts
        irqchip/armada-370-xp: Fix return value of armada_370_xp_msi_alloc()
      82d2ef45
    • Linus Torvalds's avatar
      Merge tag 'sched-urgent-2021-12-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 77360225
      Linus Torvalds authored
      Pull scheduler fix from Thomas Gleixner:
       "A single fix for the x86 scheduler topology:
      
        Using cluster topology on hybrid CPUs, e.g. Alder Lake, biases the
        scheduler towards the ATOM cluster as that has more total capacity.
        Use selection based on CPU priority instead"
      
      * tag 'sched-urgent-2021-12-12' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched,x86: Don't use cluster topology for x86 hybrid CPUs
      77360225
    • Linus Torvalds's avatar
      Merge tag 'csky-for-linus-5.16-rc5' of git://github.com/c-sky/csky-linux · 0f3d41e8
      Linus Torvalds authored
      Pull csky from Guo Ren:
       "Only one fix for csky: fix fpu config macro"
      
      * tag 'csky-for-linus-5.16-rc5' of git://github.com/c-sky/csky-linux:
        csky: fix typo of fpu config macro
      0f3d41e8
  3. Dec 12, 2021
    • Pavel Hofman's avatar
      usb: core: config: using bit mask instead of individual bits · ca573739
      Pavel Hofman authored
      
      
      Using standard USB_EP_MAXP_MULT_MASK instead of individual bits for
      extracting multiple-transactions bits from wMaxPacketSize value.
      
      Acked-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: default avatarPavel Hofman <pavel.hofman@ivitera.com>
      Link: https://lore.kernel.org/r/20211210085219.16796-2-pavel.hofman@ivitera.com
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      ca573739
    • Pavel Hofman's avatar
      usb: core: config: fix validation of wMaxPacketValue entries · 1a3910c8
      Pavel Hofman authored
      The checks performed by commit aed9d65a ("USB: validate
      wMaxPacketValue entries in endpoint descriptors") require that initial
      value of the maxp variable contains both maximum packet size bits
      (10..0) and multiple-transactions bits (12..11). However, the existing
      code assings only the maximum packet size bits. This patch assigns all
      bits of wMaxPacketSize to the variable.
      
      Fixes: aed9d65a
      
       ("USB: validate wMaxPacketValue entries in endpoint descriptors")
      Cc: stable <stable@vger.kernel.org>
      Acked-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: default avatarPavel Hofman <pavel.hofman@ivitera.com>
      Link: https://lore.kernel.org/r/20211210085219.16796-1-pavel.hofman@ivitera.com
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      1a3910c8
    • Greg Kroah-Hartman's avatar
      USB: gadget: zero allocate endpoint 0 buffers · 86ebbc11
      Greg Kroah-Hartman authored
      
      
      Under some conditions, USB gadget devices can show allocated buffer
      contents to a host.  Fix this up by zero-allocating them so that any
      extra data will all just be zeros.
      
      Reported-by: default avatarSzymon Heidrich <szymon.heidrich@gmail.com>
      Tested-by: default avatarSzymon Heidrich <szymon.heidrich@gmail.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      86ebbc11
    • Greg Kroah-Hartman's avatar
      USB: gadget: detect too-big endpoint 0 requests · 153a2d7e
      Greg Kroah-Hartman authored
      
      
      Sometimes USB hosts can ask for buffers that are too large from endpoint
      0, which should not be allowed.  If this happens for OUT requests, stall
      the endpoint, but for IN requests, trim the request size to the endpoint
      buffer size.
      
      Co-developed-by: default avatarSzymon Heidrich <szymon.heidrich@gmail.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      153a2d7e
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · a763d5a5
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Four fixes, all in drivers.
      
        Three are small and obvious, the qedi one is a bit larger but also
        pretty obvious"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: qla2xxx: Format log strings only if needed
        scsi: scsi_debug: Fix buffer size of REPORT ZONES command
        scsi: qedi: Fix cmd_cleanup_cmpl counter mismatch issue
        scsi: pm80xx: Do not call scsi_remove_host() in pm8001_alloc()
      a763d5a5
    • Linus Torvalds's avatar
      Merge tag 'xfs-5.16-fixes-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · e034d9cb
      Linus Torvalds authored
      Pull xfs fix from Darrick Wong:
       "This fixes a race between a readonly remount process and other
        processes that hold a file IOLOCK on files that previously experienced
        copy on write, that could result in severe filesystem corruption if
        the filesystem is then remounted rw.
      
        I think this is fairly rare (since the only reliable reproducer I have
        that fits the second criteria is the experimental xfs_scrub program),
        but the race is clear, so we still need to fix this.
      
        Summary:
      
         - Fix a data corruption vector that can result from the ro remount
           process failing to clear all speculative preallocations from files
           and the rw remount process not noticing the incomplete cleanup"
      
      * tag 'xfs-5.16-fixes-3' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: remove all COW fork extents when remounting readonly
      e034d9cb
    • Linus Torvalds's avatar
      Merge branch 'for-5.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu · 8f97a35a
      Linus Torvalds authored
      Pull percpu fixes from Dennis Zhou:
       "This contains a fix for SMP && !MMU archs for percpu which has been
        tested by arm and sh. It seems in the past they have gotten away with
        it due to mapping of vm functions to km functions, but this fell apart
        a few releases ago and was just reported recently.
      
        The other is just a minor dependency clean up.
      
        I think queued up right now by Andrew is a fix in percpu that papers
        of what seems to be a bug in hotplug for a special situation with
        memoryless nodes. Michal Hocko is digging into it further"
      
      * 'for-5.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu:
        percpu_ref: Replace kernel.h with the necessary inclusions
        percpu: km: ensure it is used with NOMMU (either UP or SMP)
      8f97a35a
    • Linus Torvalds's avatar
      Merge tag 'perf-tools-fixes-for-v5.16-2021-12-11' of... · bbdff6d5
      Linus Torvalds authored
      Merge tag 'perf-tools-fixes-for-v5.16-2021-12-11' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux
      
      Pull perf tools fixes from Arnaldo Carvalho de Melo:
      
       - Prevent out-of-bounds access to per sample registers.
      
       - Fix NULL vs IS_ERR_OR_NULL() checking on the python binding.
      
       - Intel PT fixes, half of those are one-liners:
            - Fix some PGE (packet generation enable/control flow packets) usage.
            - Fix sync state when a PSB (synchronization) packet is found.
            - Fix intel_pt_fup_event() assumptions about setting state type.
            - Fix state setting when receiving overflow (OVF) packet.
            - Fix next 'err' value, walking trace.
            - Fix missing 'instruction' events with 'q' option.
            - Fix error timestamp setting on the decoder error path.
      
      * tag 'perf-tools-fixes-for-v5.16-2021-12-11' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux:
        perf python: Fix NULL vs IS_ERR_OR_NULL() checking
        perf intel-pt: Fix error timestamp setting on the decoder error path
        perf intel-pt: Fix missing 'instruction' events with 'q' option
        perf intel-pt: Fix next 'err' value, walking trace
        perf intel-pt: Fix state setting when receiving overflow (OVF) packet
        perf intel-pt: Fix intel_pt_fup_event() assumptions about setting state type
        perf intel-pt: Fix sync state when a PSB (synchronization) packet is found
        perf intel-pt: Fix some PGE (packet generation enable/control flow packets) usage
        perf tools: Prevent out-of-bounds access to registers
      bbdff6d5
    • Linus Torvalds's avatar
      Merge tag 'block-5.16-2021-12-10' of git://git.kernel.dk/linux-block · eccea80b
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "A few block fixes that should go into this release:
      
         - NVMe pull request:
              - set ana_log_size to 0 after freeing ana_log_buf (Hou Tao)
              - show subsys nqn for duplicate cntlids (Keith Busch)
              - disable namespace access for unsupported metadata (Keith
                Busch)
              - report write pointer for a full zone as zone start + zone len
                (Niklas Cassel)
              - fix use after free when disconnecting a reconnecting ctrl
                (Ruozhu Li)
              - fix a list corruption in nvmet-tcp (Sagi Grimberg)
      
         - Fix for a regression on DIO single bio async IO (Pavel)
      
         - ioprio seteuid fix (Davidlohr)
      
         - mtd fix that subsequently got reverted as it was broken, will get
           re-done and submitted for the next round
      
         - Two MD fixes via Song (Markus, zhangyue)"
      
      * tag 'block-5.16-2021-12-10' of git://git.kernel.dk/linux-block:
        Revert "mtd_blkdevs: don't scan partitions for plain mtdblock"
        block: fix ioprio_get(IOPRIO_WHO_PGRP) vs setuid(2)
        md: fix double free of mddev->private in autorun_array()
        md: fix update super 1.0 on rdev size change
        nvmet-tcp: fix possible list corruption for unexpected command failure
        block: fix single bio async DIO error handling
        nvme: fix use after free when disconnecting a reconnecting ctrl
        nvme-multipath: set ana_log_size to 0 after free ana_log_buf
        mtd_blkdevs: don't scan partitions for plain mtdblock
        nvme: report write pointer for a full zone as zone start + zone len
        nvme: disable namespace access for unsupported metadata
        nvme: show subsys nqn for duplicate cntlids
      eccea80b
    • Linus Torvalds's avatar
      Merge tag 'io_uring-5.16-2021-12-10' of git://git.kernel.dk/linux-block · f152165a
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
       "A few fixes that are all bound for stable:
      
         - Two syzbot reports for io-wq that turned out to be separate fixes,
           but ultimately very closely related
      
         - io_uring task_work running on cancelations"
      
      * tag 'io_uring-5.16-2021-12-10' of git://git.kernel.dk/linux-block:
        io-wq: check for wq exit after adding new worker task_work
        io_uring: ensure task_work gets run as part of cancelations
        io-wq: remove spurious bit clear on task_work addition
      f152165a
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · bd66be54
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "Two more I2C driver bugfixes"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: mpc: Use atomic read and fix break condition
        i2c: virtio: fix completion handling
      bd66be54
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 2acdaf59
      Linus Torvalds authored
      Pull clk driver fixes from Stephen Boyd:
      
       - Fix qcom mux logic to look at the proper parent table member. Luckily
         this clk type isn't very common.
      
       - Don't kill clks on qcom systems that use Trion PLLs that are enabled
         out of the bootloader. We will simply skip programming the PLL rate
         if it's already done.
      
       - Use the proper clk_ops for the qcom sm6125 ICE clks.
      
       - Use module_platform_driver() in i.MX as it can be a module.
      
       - Fix a UAF in the versatile clk driver on an error path.
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk: versatile: clk-icst: use after free on error path
        clk: qcom: sm6125-gcc: Swap ops of ice and apps on sdcc1
        clk: imx: use module_platform_driver
        clk: qcom: clk-alpha-pll: Don't reconfigure running Trion
        clk: qcom: regmap-mux: fix parent clock lookup
      2acdaf59
    • Linus Torvalds's avatar
      Merge tag 'devicetree-fixes-for-5.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · a84e0b31
      Linus Torvalds authored
      Pull devicetree fixes from Rob Herring:
      
       - Revert schema checks on %.dtb targets. This was problematic for some
         external build tools.
      
       - A few DT binding example fixes
      
       - Add back dropped 'enet-phy-lane-no-swap' Ethernet PHY property
      
       - Drop erroneous if/then schema in nxp,imx7-mipi-csi2
      
       - Add a quirk to fix some interrupt controllers use of 'interrupt-map'
      
      * tag 'devicetree-fixes-for-5.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        Revert "kbuild: Enable DT schema checks for %.dtb targets"
        dt-bindings: bq25980: Fixup the example
        dt-bindings: input: gpio-keys: Fix interrupts in example
        dt-bindings: net: Reintroduce PHY no lane swap binding
        dt-bindings: media: nxp,imx7-mipi-csi2: Drop bad if/then schema
        of/irq: Add a quirk for controllers with their own definition of interrupt-map
        dt-bindings: iio: adc: exynos-adc: Fix node name in example
      a84e0b31
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · df442a4e
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "21 patches.
      
        Subsystems affected by this patch series: MAINTAINERS, mailmap, and mm
        (mlock, pagecache, damon, slub, memcg, hugetlb, and pagecache)"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (21 commits)
        mm: bdi: initialize bdi_min_ratio when bdi is unregistered
        hugetlbfs: fix issue of preallocation of gigantic pages can't work
        mm/memcg: relocate mod_objcg_mlstate(), get_obj_stock() and put_obj_stock()
        mm/slub: fix endianness bug for alloc/free_traces attributes
        selftests/damon: split test cases
        selftests/damon: test debugfs file reads/writes with huge count
        selftests/damon: test wrong DAMOS condition ranges input
        selftests/damon: test DAMON enabling with empty target_ids case
        selftests/damon: skip test if DAMON is running
        mm/damon/vaddr-test: remove unnecessary variables
        mm/damon/vaddr-test: split a test function having >1024 bytes frame size
        mm/damon/vaddr: remove an unnecessary warning message
        mm/damon/core: remove unnecessary error messages
        mm/damon/dbgfs: remove an unnecessary error message
        mm/damon/core: use better timer mechanisms selection threshold
        mm/damon/core: fix fake load reports due to uninterruptible sleeps
        timers: implement usleep_idle_range()
        filemap: remove PageHWPoison check from next_uptodate_page()
        mailmap: update email address for Guo Ren
        MAINTAINERS: update kdump maintainers
        ...
      df442a4e
  4. Dec 11, 2021
    • Thomas Gleixner's avatar
      Merge tag 'timers-v5.16-rc4' of... · aa073d8b
      Thomas Gleixner authored
      Merge tag 'timers-v5.16-rc4' of https://git.linaro.org/people/daniel.lezcano/linux into timers/urgent
      
      Pull timer fixes from Daniel Lezcano:
      
        - Fix build error with clang and some kernel configuration on the
          arm64 architected timer by inlining the
          erratum_set_next_event_generic() function (Marc Zyngier)
      
        - Fix probe error on the dw_apb_timer_of driver by fixing the
          incorrect condition previously introduced (Alexey Sheplyakov)
      
      Link: https://lore.kernel.org/r/429b796d-9395-4ca8-81f3-30911f80a9a9@linaro.org
      aa073d8b
    • Miaoqian Lin's avatar
      perf python: Fix NULL vs IS_ERR_OR_NULL() checking · 9937e8da
      Miaoqian Lin authored
      
      
      The function trace_event__tp_format_id may return ERR_PTR(-ENOMEM).  Use
      IS_ERR_OR_NULL to check tp_format.
      
      Signed-off-by: default avatarMiaoqian Lin <linmq006@gmail.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Song Liu <song@kernel.org>
      Link: http://lore.kernel.org/lkml/20211211053856.19827-1-linmq006@gmail.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      9937e8da
    • Adrian Hunter's avatar
      perf intel-pt: Fix error timestamp setting on the decoder error path · 6665b8e4
      Adrian Hunter authored
      An error timestamp shows the last known timestamp for the queue, but this
      is not updated on the error path. Fix by setting it.
      
      Fixes: f4aa0819
      
       ("perf tools: Add Intel PT decoder")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v5.15+
      Link: https://lore.kernel.org/r/20211210162303.2288710-8-adrian.hunter@intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      6665b8e4
    • Adrian Hunter's avatar
      perf intel-pt: Fix missing 'instruction' events with 'q' option · a882cc94
      Adrian Hunter authored
      FUP packets contain IP information, which makes them also an 'instruction'
      event in 'hop' mode i.e. the itrace 'q' option.  That wasn't happening, so
      restructure the logic so that FUP events are added along with appropriate
      'instruction' and 'branch' events.
      
      Fixes: 7c1b16ba
      
       ("perf intel-pt: Add support for decoding FUP/TIP only")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v5.15+
      Link: https://lore.kernel.org/r/20211210162303.2288710-7-adrian.hunter@intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      a882cc94
    • Adrian Hunter's avatar
      perf intel-pt: Fix next 'err' value, walking trace · a32e6c5d
      Adrian Hunter authored
      Code after label 'next:' in intel_pt_walk_trace() assumes 'err' is zero,
      but it may not be, if arrived at via a 'goto'. Ensure it is zero.
      
      Fixes: 7c1b16ba
      
       ("perf intel-pt: Add support for decoding FUP/TIP only")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v5.15+
      Link: https://lore.kernel.org/r/20211210162303.2288710-6-adrian.hunter@intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      a32e6c5d
    • Adrian Hunter's avatar
      perf intel-pt: Fix state setting when receiving overflow (OVF) packet · c79ee2b2
      Adrian Hunter authored
      An overflow (OVF packet) is treated as an error because it represents a
      loss of trace data, but there is no loss of synchronization, so the packet
      state should be INTEL_PT_STATE_IN_SYNC not INTEL_PT_STATE_ERR_RESYNC.
      
      To support that, some additional variables must be reset, and the FUP
      packet that may follow OVF is treated as an FUP event.
      
      Fixes: f4aa0819
      
       ("perf tools: Add Intel PT decoder")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v5.15+
      Link: https://lore.kernel.org/r/20211210162303.2288710-5-adrian.hunter@intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      c79ee2b2
    • Adrian Hunter's avatar
      perf intel-pt: Fix intel_pt_fup_event() assumptions about setting state type · 4c761d80
      Adrian Hunter authored
      intel_pt_fup_event() assumes it can overwrite the state type if there has
      been an FUP event, but this is an unnecessary and unexpected constraint on
      callers.
      
      Fix by touching only the state type flags that are affected by an FUP
      event.
      
      Fixes: a472e65f
      
       ("perf intel-pt: Add decoder support for ptwrite and power event packets")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v5.15+
      Link: https://lore.kernel.org/r/20211210162303.2288710-4-adrian.hunter@intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      4c761d80
    • Adrian Hunter's avatar
      perf intel-pt: Fix sync state when a PSB (synchronization) packet is found · ad106a26
      Adrian Hunter authored
      When syncing, it may be that branch packet generation is not enabled at
      that point, in which case there will not immediately be a control-flow
      packet, so some packets before a control flow packet turns up, get
      ignored.  However, the decoder is in sync as soon as a PSB is found, so
      the state should be set accordingly.
      
      Fixes: f4aa0819
      
       ("perf tools: Add Intel PT decoder")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v5.15+
      Link: https://lore.kernel.org/r/20211210162303.2288710-3-adrian.hunter@intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      ad106a26
    • Adrian Hunter's avatar
      perf intel-pt: Fix some PGE (packet generation enable/control flow packets) usage · 057ae59f
      Adrian Hunter authored
      Packet generation enable (PGE) refers to whether control flow (COFI)
      packets are being produced.
      
      PGE may be false even when branch-tracing is enabled, due to being
      out-of-context, or outside a filter address range.  Fix some missing PGE
      usage.
      
      Fixes: 7c1b16ba ("perf intel-pt: Add support for decoding FUP/TIP only")
      Fixes: 83959817
      
       ("perf intel-pt: Allow decoding with branch tracing disabled")
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: stable@vger.kernel.org # v5.15+
      Link: https://lore.kernel.org/r/20211210162303.2288710-2-adrian.hunter@intel.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      057ae59f
    • German Gomez's avatar
      perf tools: Prevent out-of-bounds access to registers · c8978997
      German Gomez authored
      
      
      The size of the cache of register values is arch-dependant
      (PERF_REGS_MAX). This has the potential of causing an out-of-bounds
      access in the function "perf_reg_value" if the local architecture
      contains less registers than the one the perf.data file was recorded on.
      
      Since the maximum number of registers is bound by the bitmask "u64
      cache_mask", and the size of the cache when running under x86 systems is
      64 already, fix the size to 64 and add a range-check to the function
      "perf_reg_value" to prevent out-of-bounds access.
      
      Reported-by: default avatarAlexandre Truong <alexandre.truong@arm.com>
      Reviewed-by: default avatarKajol Jain <kjain@linux.ibm.com>
      Signed-off-by: default avatarGerman Gomez <german.gomez@arm.com>
      Acked-by: default avatarJiri Olsa <jolsa@redhat.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Will Deacon <will@kernel.org>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-csky@vger.kernel.org
      Cc: linux-riscv@lists.infradead.org
      Link: https://lore.kernel.org/r/20211201123334.679131-2-german.gomez@arm.com
      Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      c8978997
    • Thomas Gleixner's avatar
      Merge tag 'irqchip-fixes-5.16-2' of... · b7fd35a0
      Thomas Gleixner authored
      Merge tag 'irqchip-fixes-5.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/urgent
      
      Pull irqchip fixes from Marc Zyngier:
      
       - Fix Armada-370-XP Multi-MSi allocation to be aligned on the allocation
         size, as required by the PCI spec
      
       - Fix aspeed-scu interrupt acknowledgement by directly writing to the
         register instead of a read-modify-write sequence
      
       - Use standard bitfirl helpers in the MIPS GIC driver instead of custom
         constructs
      
       - Fix the NVIC driver IPR register offset
      
       - Correctly drop the reference of the device node in the irq-bcm7120-l2
         driver
      
       - Fix the GICv3 ITS INVALL command by issueing a following SYNC command
      
       - Add a missing __init attribute to the init function of the Apple AIC
         driver
      
      Link: https://lore.kernel.org/r/20211210133516.664497-1-maz@kernel.org
      b7fd35a0
    • Linus Torvalds's avatar
      Merge tag 'for-5.16-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 6f513529
      Linus Torvalds authored
      Pull btrfs fixes from David Sterba:
       "A few more regression fixes and stable patches, mostly one-liners.
      
        Regression fixes:
      
         - fix pointer/ERR_PTR mismatch returned from memdup_user
      
         - reset dedicated zoned mode relocation block group to avoid using it
           and filling it without any recourse
      
        Fixes:
      
         - handle a case to FITRIM range (also to make fstests/generic/260
           work)
      
         - fix warning when extent buffer state and pages get out of sync
           after an IO error
      
         - fix transaction abort when syncing due to missing mapping error set
           on metadata inode after inlining a compressed file
      
         - fix transaction abort due to tree-log and zoned mode interacting in
           an unexpected way
      
         - fix memory leak of additional extent data when qgroup reservation
           fails
      
         - do proper handling of slot search call when deleting root refs"
      
      * tag 'for-5.16-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: replace the BUG_ON in btrfs_del_root_ref with proper error handling
        btrfs: zoned: clear data relocation bg on zone finish
        btrfs: free exchange changeset on failures
        btrfs: fix re-dirty process of tree-log nodes
        btrfs: call mapping_set_error() on btree inode with a write error
        btrfs: clear extent buffer uptodate when we fail to write it
        btrfs: fail if fstrim_range->start == U64_MAX
        btrfs: fix error pointer dereference in btrfs_ioctl_rm_dev_v2()
      6f513529
    • Linus Torvalds's avatar
      Merge tag '5.16-rc4-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · e1b96811
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Two cifs/smb3 fixes - one for stable, the other fixes a recently
        reported NTLMSSP auth problem"
      
      * tag '5.16-rc4-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: fix ntlmssp auth when there is no key exchange
        cifs: Fix crash on unload of cifs_arc4.ko
      e1b96811
    • Linus Torvalds's avatar
      Merge tag 'nfsd-5.16-2' of git://linux-nfs.org/~bfields/linux · e80bdc5e
      Linus Torvalds authored
      Pull nfsd fixes from Bruce Fields:
       "Fix a race on startup and another in the delegation code.
      
        The latter has been around for years, but I suspect recent changes may
        have widened the race window a little, so I'd like to go ahead and get
        it in"
      
      * tag 'nfsd-5.16-2' of git://linux-nfs.org/~bfields/linux:
        nfsd: fix use-after-free due to delegation race
        nfsd: Fix nsfd startup race (again)
      e80bdc5e
    • Manjong Lee's avatar
      mm: bdi: initialize bdi_min_ratio when bdi is unregistered · 3c376dfa
      Manjong Lee authored
      
      
      Initialize min_ratio if it is set during bdi unregistration.  This can
      prevent problems that may occur a when bdi is removed without resetting
      min_ratio.
      
      For example.
      1) insert external sdcard
      2) set external sdcard's min_ratio 70
      3) remove external sdcard without setting min_ratio 0
      4) insert external sdcard
      5) set external sdcard's min_ratio 70 << error occur(can't set)
      
      Because when an sdcard is removed, the present bdi_min_ratio value will
      remain.  Currently, the only way to reset bdi_min_ratio is to reboot.
      
      [akpm@linux-foundation.org: tweak comment and coding style]
      
      Link: https://lkml.kernel.org/r/20211021161942.5983-1-mj0123.lee@samsung.com
      Signed-off-by: default avatarManjong Lee <mj0123.lee@samsung.com>
      Acked-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
      Cc: Changheun Lee <nanich.lee@samsung.com>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Matthew Wilcox <willy@infradead.org>
      Cc: <seunghwan.hyun@samsung.com>
      Cc: <sookwan7.kim@samsung.com>
      Cc: <yt0928.kim@samsung.com>
      Cc: <junho89.kim@samsung.com>
      Cc: <jisoo2146.oh@samsung.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3c376dfa
    • Zhenguo Yao's avatar
      hugetlbfs: fix issue of preallocation of gigantic pages can't work · 4178158e
      Zhenguo Yao authored
      Preallocation of gigantic pages can't work bacause of commit
      b5389086 ("hugetlbfs: extend the definition of hugepages parameter
      to support node allocation").  When nid is NUMA_NO_NODE(-1),
      alloc_bootmem_huge_page will always return without doing allocation.
      Fix this by adding more check.
      
      Link: https://lkml.kernel.org/r/20211129133803.15653-1-yaozhenguo1@gmail.com
      Fixes: b5389086
      
       ("hugetlbfs: extend the definition of hugepages parameter to support node allocation")
      Signed-off-by: default avatarZhenguo Yao <yaozhenguo1@gmail.com>
      Reviewed-by: default avatarMike Kravetz <mike.kravetz@oracle.com>
      Tested-by: default avatarMaxim Levitsky <mlevitsk@redhat.com>
      Reviewed-by: default avatarMuchun Song <songmuchun@bytedance.com>
      Reviewed-by: default avatarBaolin Wang <baolin.wang@linux.alibaba.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4178158e
    • Waiman Long's avatar
      mm/memcg: relocate mod_objcg_mlstate(), get_obj_stock() and put_obj_stock() · a7ebf564
      Waiman Long authored
      All the calls to mod_objcg_mlstate(), get_obj_stock() and
      put_obj_stock() are done by functions defined within the same "#ifdef
      CONFIG_MEMCG_KMEM" compilation block.  When CONFIG_MEMCG_KMEM isn't
      defined, the following compilation warnings will be issued [1] and [2].
      
        mm/memcontrol.c:785:20: warning: unused function 'mod_objcg_mlstate'
        mm/memcontrol.c:2113:33: warning: unused function 'get_obj_stock'
      
      Fix these warning by moving those functions to under the same
      CONFIG_MEMCG_KMEM compilation block.  There is no functional change.
      
      [1] https://lore.kernel.org/lkml/202111272014.WOYNLUV6-lkp@intel.com/
      [2] https://lore.kernel.org/lkml/202111280551.LXsWYt1T-lkp@intel.com/
      
      Link: https://lkml.kernel.org/r/20211129161140.306488-1-longman@redhat.com
      Fixes: 55927114 ("mm/memcg: optimize user context object stock access")
      Fixes: 68ac5b3c
      
       ("mm/memcg: cache vmstat data in percpu memcg_stock_pcp")
      Signed-off-by: default avatarWaiman Long <longman@redhat.com>
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Reviewed-by: default avatarShakeel Butt <shakeelb@google.com>
      Acked-by: default avatarRoman Gushchin <guro@fb.com>
      Reviewed-by: default avatarMuchun Song <songmuchun@bytedance.com>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: Michal Hocko <mhocko@kernel.org>
      Cc: Vladimir Davydov <vdavydov.dev@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a7ebf564
    • Gerald Schaefer's avatar
      mm/slub: fix endianness bug for alloc/free_traces attributes · 005a79e5
      Gerald Schaefer authored
      On big-endian s390, the alloc/free_traces attributes produce endless
      output, because of always 0 idx in slab_debugfs_show().
      
      idx is de-referenced from *v, which points to a loff_t value, with
      
          unsigned int idx = *(unsigned int *)v;
      
      This will only give the upper 32 bits on big-endian, which remain 0.
      
      Instead of only fixing this de-reference, during discussion it seemed
      more appropriate to change the seq_ops so that they use an explicit
      iterator in private loc_track struct.
      
      This patch adds idx to loc_track, which will also fix the endianness
      bug.
      
      Link: https://lore.kernel.org/r/20211117193932.4049412-1-gerald.schaefer@linux.ibm.com
      Link: https://lkml.kernel.org/r/20211126171848.17534-1-gerald.schaefer@linux.ibm.com
      Fixes: 64dd6849
      
       ("mm: slub: move sysfs slab alloc/free interfaces to debugfs")
      Signed-off-by: default avatarGerald Schaefer <gerald.schaefer@linux.ibm.com>
      Reported-by: default avatarSteffen Maier <maier@linux.ibm.com>
      Acked-by: default avatarVlastimil Babka <vbabka@suse.cz>
      Cc: Faiyaz Mohammed <faiyazm@codeaurora.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Christoph Lameter <cl@linux.com>
      Cc: Pekka Enberg <penberg@kernel.org>
      Cc: David Rientjes <rientjes@google.com>
      Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      005a79e5