1. 12 Jan, 2022 19 commits
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 3d3d6733
      Linus Torvalds authored
      Pull fanotify updates from Jan Kara:
       "Support for new FAN_RENAME fanotify event and support for reporting
        child info in directory fanotify events (FAN_REPORT_TARGET_FID)"
      
      * tag 'fsnotify_for_v5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fanotify: wire up FAN_RENAME event
        fanotify: report old and/or new parent+name in FAN_RENAME event
        fanotify: record either old name new name or both for FAN_RENAME
        fanotify: record old and new parent and name in FAN_RENAME event
        fanotify: support secondary dir fh and name in fanotify_info
        fanotify: use helpers to parcel fanotify_info buffer
        fanotify: use macros to get the offset to fanotify_info buffer
        fsnotify: generate FS_RENAME event with rich information
        fanotify: introduce group flag FAN_REPORT_TARGET_FID
        fsnotify: separate mark iterator type from object type enum
        fsnotify: clarify object type argument
      3d3d6733
    • Linus Torvalds's avatar
      Merge tag 'iomap-5.17' of git://git.infradead.org/users/willy/linux · f079ab01
      Linus Torvalds authored
      Pull iomap updates from Matthew Wilcox:
       "Convert xfs/iomap to use folios.
      
        This should be all that is needed for XFS to use large folios. There
        is no code in this pull request to create large folios, but no
        additional changes should be needed to XFS or iomap once they are
        created.
      
        Usually this would have come from Darrick, and we had intended that it
        would come that route. Between the holidays and various things which
        Darrick needed to work on, he asked if I could send things directly.
      
        There weren't any other iomap patches pending for this release, which
        probably also played a role"
      
      * tag 'iomap-5.17' of git://git.infradead.org/users/willy/linux: (26 commits)
        iomap: Inline __iomap_zero_iter into its caller
        xfs: Support large folios
        iomap: Support large folios in invalidatepage
        iomap: Convert iomap_migrate_page() to use folios
        iomap: Convert iomap_add_to_ioend() to take a folio
        iomap: Simplify iomap_do_writepage()
        iomap: Simplify iomap_writepage_map()
        iomap,xfs: Convert ->discard_page to ->discard_folio
        iomap: Convert iomap_write_end_inline to take a folio
        iomap: Convert iomap_write_begin() and iomap_write_end() to folios
        iomap: Convert __iomap_zero_iter to use a folio
        iomap: Allow iomap_write_begin() to be called with the full length
        iomap: Convert iomap_page_mkwrite to use a folio
        iomap: Convert readahead and readpage to use a folio
        iomap: Convert iomap_read_inline_data to take a folio
        iomap: Use folio offsets instead of page offsets
        iomap: Convert bio completions to use folios
        iomap: Pass the iomap_page into iomap_set_range_uptodate
        iomap: Add iomap_invalidate_folio
        iomap: Convert iomap_releasepage to use a folio
        ...
      f079ab01
    • Linus Torvalds's avatar
      Merge tag 'folio-5.17' of git://git.infradead.org/users/willy/pagecache · 6020c204
      Linus Torvalds authored
      Pull folio conversion updates from Matthew Wilcox:
       "Convert much of the page cache to use folios
      
        This stops just short of actually enabling large folios. It converts
        everything that I noticed needs to be converted, but there may still
        be places I've overlooked which still have page size assumptions.
      
        The big change here is using large entries in the page cache XArray
        instead of many small entries. That only affects shmem for now, but
        it's a pretty big change for shmem since it changes where memory needs
        to be allocated (at split time instead of insertion)"
      
      * tag 'folio-5.17' of git://git.infradead.org/users/willy/pagecache: (49 commits)
        mm: Use multi-index entries in the page cache
        XArray: Add xas_advance()
        truncate,shmem: Handle truncates that split large folios
        truncate: Convert invalidate_inode_pages2_range to folios
        fs: Convert vfs_dedupe_file_range_compare to folios
        mm: Remove pagevec_remove_exceptionals()
        mm: Convert find_lock_entries() to use a folio_batch
        filemap: Return only folios from find_get_entries()
        filemap: Convert filemap_get_read_batch() to use a folio_batch
        filemap: Convert filemap_read() to use a folio
        truncate: Add invalidate_complete_folio2()
        truncate: Convert invalidate_inode_pages2_range() to use a folio
        truncate: Skip known-truncated indices
        truncate,shmem: Add truncate_inode_folio()
        shmem: Convert part of shmem_undo_range() to use a folio
        mm: Add unmap_mapping_folio()
        truncate: Add truncate_cleanup_folio()
        filemap: Add filemap_release_folio()
        filemap: Use a folio in filemap_page_mkwrite
        filemap: Use a folio in filemap_map_pages
        ...
      6020c204
    • Linus Torvalds's avatar
      Merge tag 'spdx-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/spdx · 81ff0be4
      Linus Torvalds authored
      Pull SPDX/License update from Greg KH:
       "Here is a single change that fixes up the description of the 'LGPL-2.1
        or later' identifiers so that the tools properly acknowledge that this
        is a valid license.
      
        This change has been in linux-next for weeks with no reported problems"
      
      * tag 'spdx-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/spdx:
        LICENSES/LGPL-2.1: Add LGPL-2.1-or-later as valid identifiers
      81ff0be4
    • Linus Torvalds's avatar
      Merge tag 'usb-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 57ea8197
      Linus Torvalds authored
      Pull USB and Thunderbolt updates from Greg KH:
       "Here is the big set of USB and Thunderbolt driver changes for
        5.17-rc1.
      
        Nothing major in here, just lots of little updates and cleanups. These
        include:
      
         - some USB header fixes picked from Ingo's header-splitup work
      
         - more USB4/Thunderbolt hardware support added
      
         - USB gadget driver updates and additions
      
         - USB typec additions (includes some acpi changes, which were acked
           by the ACPI maintainer)
      
         - core USB fixes as found by syzbot that were too late for 5.16-final
      
         - USB dwc3 driver updates
      
         - USB dwc2 driver updates
      
         - platform_get_irq() conversions of some USB drivers
      
         - other minor USB driver updates and additions
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'usb-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (111 commits)
        docs: ABI: fixed formatting in configfs-usb-gadget-uac2
        usb: gadget: u_audio: Subdevice 0 for capture ctls
        usb: gadget: u_audio: fix calculations for small bInterval
        usb: dwc2: gadget: initialize max_speed from params
        usb: dwc2: do not gate off the hardware if it does not support clock gating
        usb: dwc3: qcom: Fix NULL vs IS_ERR checking in dwc3_qcom_probe
        headers/deps: USB: Optimize <linux/usb/ch9.h> dependencies, remove <linux/device.h>
        USB: common: debug: add needed kernel.h include
        headers/prep: Fix non-standard header section: drivers/usb/host/ohci-tmio.c
        headers/prep: Fix non-standard header section: drivers/usb/cdns3/core.h
        headers/prep: usb: gadget: Fix namespace collision
        USB: core: Fix bug in resuming hub's handling of wakeup requests
        USB: Fix "slab-out-of-bounds Write" bug in usb_hcd_poll_rh_status
        usb: dwc3: dwc3-qcom: Add missing platform_device_put() in dwc3_qcom_acpi_register_core
        usb: gadget: clear related members when goto fail
        usb: gadget: don't release an existing dev->buf
        usb: dwc2: Simplify a bitmap declaration
        usb: Remove usb_for_each_port()
        usb: typec: port-mapper: Convert to the component framework
        usb: Link the ports to the connectors they are attached to
        ...
      57ea8197
    • Linus Torvalds's avatar
      Merge tag 'tty-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 342465f5
      Linus Torvalds authored
      Pull tty/serial driver updates from Greg KH:
       "Here is the big set of tty/serial driver updates for 5.17-rc1.
      
        Nothing major in here, just lots of good updates and fixes, including:
      
         - more tty core cleanups from Jiri as well as mxser driver cleanups.
           This is the majority of the core diffstat
      
         - tty documentation updates from Jiri
      
         - platform_get_irq() updates
      
         - various serial driver updates for new features and hardware
      
         - fifo usage for 8250 console, reducing cpu load a lot
      
         - LED fix for keyboards, long-time bugfix that went through many
           revisions
      
         - minor cleanups
      
        All have been in linux-next for a while with no reported problems"
      
      * tag 'tty-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (119 commits)
        serial: core: Keep mctrl register state and cached copy in sync
        serial: stm32: correct loop for dma error handling
        serial: stm32: fix flow control transfer in DMA mode
        serial: stm32: rework TX DMA state condition
        serial: stm32: move tx dma terminate DMA to shutdown
        serial: pl011: Drop redundant DTR/RTS preservation on close/open
        serial: pl011: Drop CR register reset on set_termios
        serial: pl010: Drop CR register reset on set_termios
        serial: liteuart: fix MODULE_ALIAS
        serial: 8250_bcm7271: Fix return error code in case of dma_alloc_coherent() failure
        Revert "serdev: BREAK/FRAME/PARITY/OVERRUN notification prototype V2"
        tty: goldfish: Use platform_get_irq() to get the interrupt
        serdev: BREAK/FRAME/PARITY/OVERRUN notification prototype V2
        tty: serial: meson: Drop the legacy compatible strings and clock code
        serial: pmac_zilog: Use platform_get_irq() to get the interrupt
        serial: bcm63xx: Use platform_get_irq() to get the interrupt
        serial: ar933x: Use platform_get_irq() to get the interrupt
        serial: vt8500: Use platform_get_irq() to get the interrupt
        serial: altera_jtaguart: Use platform_get_irq_optional() to get the interrupt
        serial: pxa: Use platform_get_irq() to get the interrupt
        ...
      342465f5
    • Linus Torvalds's avatar
      Merge tag 'staging-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 22ef1219
      Linus Torvalds authored
      Pull staging driver updates from Greg KH:
       "Here's the big set of staging driver updates for 5.17-rc1
      
        Nothing major in here at all, just lots and lots of tiny cleanups.
        Overall more code was removed than added, which is always nice, but
        not a huge change.
      
        Majority of the work happened in the r8188eu driver, that had hundreds
        of cleanups happen on it, but almost all other staging drivers had
        cleanups as well. No new functionality was added, cleanups only.
      
        All of these have been in linux-next for a while with no reported
        problems"
      
      * tag 'staging-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (308 commits)
        staging: r8188eu: rename camelcase variable uintPeerChannel
        staging: r8188eu: make BW20_24G_Diff a 1-D array
        staging: r8188eu: make OFDM_24G_Diff a 1-D array
        staging: r8188eu: BW40_24G_Diff is set but not used
        staging: r8188eu: CCK_24G_Diff is set but not used
        staging: r8188eu: make Index24G_BW40_Base a 1-D array
        staging: r8188eu: make Index24G_CCK_Base a 1-D array
        staging: r8188eu: rfPath is always 0
        staging: r8188eu: remove unneeded parameter from rtl8188e_SetHalODMVar
        staging: pi433: add comment to rx_lock mutex definition
        staging: pi433: fix frequency deviation check
        staging: vc04_services: rename BM2835 to BCM2835 in headers comments
        staging: vc04_services: rename string literal containing bm2835_* to bcm2835*_
        staging: vc04_services: rename variables containing bm2835_* to bcm2835_*
        staging: vc04_services: rename functions containing bm2835_* to bcm2835_*
        staging: vc04_services: rename structures bm2835_mmal_dev and bm2835_mmal_v4l2_ctrl
        staging: greybus: audio: Check null pointer
        staging: r8188eu: add spaces around P2P_AP_P2P_CH_SWITCH_PROCESS_WK
        staging: r8188eu: turbo scan is always off for r8188eu
        staging: r8188eu: cmd_issued_cnt is set but not used
        ...
      22ef1219
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.17-rc1' of... · 6dc69d3d
      Linus Torvalds authored
      Merge tag 'driver-core-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core updates from Greg KH:
       "Here is the set of changes for the driver core for 5.17-rc1.
      
        Lots of little things here, including:
      
         - kobj_type cleanups
      
         - auxiliary_bus documentation updates
      
         - auxiliary_device conversions for some drivers (relevant subsystems
           all have provided acks for these)
      
         - kernfs lock contention reduction for some workloads
      
         - other tiny cleanups and changes.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'driver-core-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (43 commits)
        kobject documentation: remove default_attrs information
        drivers/firmware: Add missing platform_device_put() in sysfb_create_simplefb
        debugfs: lockdown: Allow reading debugfs files that are not world readable
        driver core: Make bus notifiers in right order in really_probe()
        driver core: Move driver_sysfs_remove() after driver_sysfs_add()
        firmware: edd: remove empty default_attrs array
        firmware: dmi-sysfs: use default_groups in kobj_type
        qemu_fw_cfg: use default_groups in kobj_type
        firmware: memmap: use default_groups in kobj_type
        sh: sq: use default_groups in kobj_type
        headers/uninline: Uninline single-use function: kobject_has_children()
        devtmpfs: mount with noexec and nosuid
        driver core: Simplify async probe test code by using ktime_ms_delta()
        nilfs2: use default_groups in kobj_type
        kobject: remove kset from struct kset_uevent_ops callbacks
        driver core: make kobj_type constant.
        driver core: platform: document registration-failure requirement
        vdpa/mlx5: Use auxiliary_device driver data helpers
        net/mlx5e: Use auxiliary_device driver data helpers
        soundwire: intel: Use auxiliary_device driver data helpers
        ...
      6dc69d3d
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · e3084ed4
      Linus Torvalds authored
      Pull pin control bulk updates from Linus Walleij:
       "Core changes:
      
         - New standard enumerator and corresponding device tree bindings for
           output impedance pin configuration. (Implemented and used in the
           Renesas rzg2l driver.)
      
         - Cleanup of Kconfig and Makefile to be somewhat orderly and
           alphabetic.
      
        New drivers:
      
         - Samsung Exynos 7885 pin controller.
      
         - Ocelot LAN966x pin controller.
      
         - Qualcomm SDX65 pin controller.
      
         - Qualcomm SM8450 pin controller.
      
         - Qualcomm PM8019, PM8226 and PM2250 pin controllers.
      
         - NXP/Freescale i.MXRT1050 pin controller.
      
         - Intel Thunder Bay pin controller.
      
        Enhancements:
      
         - Introduction of the string library helper function
           "kasprintf_strarray()" and subsequent use in Rockchip, ST and
           Armada pin control drivers, as well as the GPIO mockup driver.
      
         - The Ocelot pin controller has been extensively rewritten to use
           regmap and other modern kernel infrastructure.
      
         - The Microchip SGPIO driver has been converted to use regmap.
      
         - The SPEAr driver had been converted to use regmap.
      
         - Substantial cleanups and janitorial on the Apple pin control driver
           that was merged for v5.16.
      
         - Janitorial to remove of_node assignments in the GPIO portions that
           anyway get this handled in the GPIO core.
      
         - Minor cleanups and improvements in several pin controllers"
      
      * tag 'pinctrl-v5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (98 commits)
        pinctrl: imx: fix assigning groups names
        dt-bindings: pinctrl: mt8195: add wrapping node of pin configurations
        pinctrl: bcm: ns: use generic groups & functions helpers
        pinctrl: imx: fix allocation result check
        pinctrl: samsung: Use platform_get_irq_optional() to get the interrupt
        pinctrl: Propagate firmware node from a parent device
        dt-bindings: pinctrl: qcom: Add SDX65 pinctrl bindings
        pinctrl: add one more "const" for generic function groups
        pinctrl: keembay: rework loops looking for groups names
        pinctrl: keembay: comment process of building functions a bit
        pinctrl: imx: prepare for making "group_names" in "function_desc" const
        ARM: dts: gpio-ranges property is now required
        pinctrl: aspeed: fix unmet dependencies on MFD_SYSCON for PINCTRL_ASPEED
        pinctrl: Get rid of duplicate of_node assignment in the drivers
        pinctrl-sunxi: don't call pinctrl_gpio_direction()
        pinctrl-bcm2835: don't call pinctrl_gpio_direction()
        pinctrl: bcm2835: Silence uninit warning
        pinctrl: Sort Kconfig and Makefile entries alphabetically
        pinctrl: Add Intel Thunder Bay pinctrl driver
        dt-bindings: pinctrl: Add bindings for Intel Thunderbay pinctrl driver
        ...
      e3084ed4
    • Linus Torvalds's avatar
      Merge tag 'media/v5.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 2ab9c967
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
      
       - some fixes at si2157 tuning logic
      
       - a warning fix on atomisp when used with clang
      
      * tag 'media/v5.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        media: si2157: add support for DVB-C Annex C
        media: si2157: fix bandwidth stored in dev
        media: si2157: fix 6MHz & 6.1MHz bandwidth setting
        media: atomisp: Do not define input_system_cfg2400_t twice
      2ab9c967
    • Linus Torvalds's avatar
      Merge tag 'for-5.17/dm-changes' of... · 49008f0c
      Linus Torvalds authored
      Merge tag 'for-5.17/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - Fixes and improvements to dm btree and dm space map code in
         persistent-data library used by thinp and cache.
      
       - Update DM integrity to use struct_group() to zero struct
         journal_sector.
      
       - Update DM sysfs to use default_groups in kobj_type.
      
      * tag 'for-5.17/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm sysfs: use default_groups in kobj_type
        dm integrity: Use struct_group() to zero struct journal_sector
        dm space map common: add bounds check to sm_ll_lookup_bitmap()
        dm btree: add a defensive bounds check to insert_at()
        dm btree remove: change a bunch of BUG_ON() calls to proper errors
        dm btree spine: eliminate duplicate le32_to_cpu() in node_check()
        dm btree spine: remove extra node_check function declaration
      49008f0c
    • Linus Torvalds's avatar
      Merge tag 'for-5.17/drivers-2022-01-11' of git://git.kernel.dk/linux-block · c9193f48
      Linus Torvalds authored
      Pull block driver updates from Jens Axboe:
      
       - mtip32xx pci cleanups (Bjorn)
      
       - mtip32xx conversion to generic power management (Vaibhav)
      
       - rsxx pci powermanagement cleanups (Bjorn)
      
       - Remove the rsxx driver. This hardware never saw much adoption, and
         it's been end of lifed for a while. (Christoph)
      
       - MD pull request from Song:
            - REQ_NOWAIT support (Vishal Verma)
            - raid6 benchmark optimization (Dirk Müller)
            - Fix for acct bioset (Xiao Ni)
            - Clean up max_queued_requests (Mariusz Tkaczyk)
            - PREEMPT_RT optimization (Davidlohr Bueso)
            - Use default_groups in kobj_type (Greg Kroah-Hartman)
      
       - Use attribute groups in pktcdvd and rnbd (Greg)
      
       - NVMe pull request from Christoph:
            - increment request genctr on completion (Keith Busch, Geliang
              Tang)
            - add a 'iopolicy' module parameter (Hannes Reinecke)
            - print out valid arguments when reading from /dev/nvme-fabrics
              (Hannes Reinecke)
      
       - Use struct_group() in drbd (Kees)
      
       - null_blk fixes (Ming)
      
       - Get rid of congestion logic in pktcdvd (Neil)
      
       - Floppy ejection hang fix (Tasos)
      
       - Floppy max user request size fix (Xiongwei)
      
       - Loop locking fix (Tetsuo)
      
      * tag 'for-5.17/drivers-2022-01-11' of git://git.kernel.dk/linux-block: (32 commits)
        md: use default_groups in kobj_type
        md: Move alloc/free acct bioset in to personality
        lib/raid6: Use strict priority ranking for pq gen() benchmarking
        lib/raid6: skip benchmark of non-chosen xor_syndrome functions
        md: fix spelling of "its"
        md: raid456 add nowait support
        md: raid10 add nowait support
        md: raid1 add nowait support
        md: add support for REQ_NOWAIT
        md: drop queue limitation for RAID1 and RAID10
        md/raid5: play nice with PREEMPT_RT
        block/rnbd-clt-sysfs: use default_groups in kobj_type
        pktcdvd: convert to use attribute groups
        block: null_blk: only set set->nr_maps as 3 if active poll_queues is > 0
        nvme: add 'iopolicy' module parameter
        nvme: drop unused variable ctrl in nvme_setup_cmd
        nvme: increment request genctr on completion
        nvme-fabrics: print out valid arguments when reading from /dev/nvme-fabrics
        block: remove the rsxx driver
        rsxx: Drop PCI legacy power management
        ...
      c9193f48
    • Linus Torvalds's avatar
      Merge tag 'for-5.17/block-2022-01-11' of git://git.kernel.dk/linux-block · d3c81080
      Linus Torvalds authored
      Pull block updates from Jens Axboe:
      
       - Unify where the struct request handling code is located in the blk-mq
         code (Christoph)
      
       - Header cleanups (Christoph)
      
       - Clean up the io_context handling code (Christoph, me)
      
       - Get rid of ->rq_disk in struct request (Christoph)
      
       - Error handling fix for add_disk() (Christoph)
      
       - request allocation cleanusp (Christoph)
      
       - Documentation updates (Eric, Matthew)
      
       - Remove trivial crypto unregister helper (Eric)
      
       - Reduce shared tag overhead (John)
      
       - Reduce poll_stats memory overhead (me)
      
       - Known indirect function call for dio (me)
      
       - Use atomic references for struct request (me)
      
       - Support request list issue for block and NVMe (me)
      
       - Improve queue dispatch pinning (Ming)
      
       - Improve the direct list issue code (Keith)
      
       - BFQ improvements (Jan)
      
       - Direct completion helper and use it in mmc block (Sebastian)
      
       - Use raw spinlock for the blktrace code (Wander)
      
       - fsync error handling fix (Ye)
      
       - Various fixes and cleanups (Lukas, Randy, Yang, Tetsuo, Ming, me)
      
      * tag 'for-5.17/block-2022-01-11' of git://git.kernel.dk/linux-block: (132 commits)
        MAINTAINERS: add entries for block layer documentation
        docs: block: remove queue-sysfs.rst
        docs: sysfs-block: document virt_boundary_mask
        docs: sysfs-block: document stable_writes
        docs: sysfs-block: fill in missing documentation from queue-sysfs.rst
        docs: sysfs-block: add contact for nomerges
        docs: sysfs-block: sort alphabetically
        docs: sysfs-block: move to stable directory
        block: don't protect submit_bio_checks by q_usage_counter
        block: fix old-style declaration
        nvme-pci: fix queue_rqs list splitting
        block: introduce rq_list_move
        block: introduce rq_list_for_each_safe macro
        block: move rq_list macros to blk-mq.h
        block: drop needless assignment in set_task_ioprio()
        block: remove unnecessary trailing '\'
        bio.h: fix kernel-doc warnings
        block: check minor range in device_add_disk()
        block: use "unsigned long" for blk_validate_block_size().
        block: fix error unwinding in device_add_disk
        ...
      d3c81080
    • Linus Torvalds's avatar
      Merge tag 'for-5.17/io_uring-2022-01-11' of git://git.kernel.dk/linux-block · 42a7b4ed
      Linus Torvalds authored
      Pull io_uring updates from Jens Axboe:
      
       - Support for prioritized work completions (Hao)
      
       - Simplification of reissue (Pavel)
      
       - Add support for CQE skip (Pavel)
      
       - Memory leak fix going to 5.15-stable (Pavel)
      
       - Re-write of internal poll. This both cleans up that code, and gets us
         ready to fix the POLLFREE issue (Pavel)
      
       - Various cleanups (GuoYong, Pavel, Hao)
      
      * tag 'for-5.17/io_uring-2022-01-11' of git://git.kernel.dk/linux-block: (31 commits)
        io_uring: fix not released cached task refs
        io_uring: remove redundant tab space
        io_uring: remove unused function parameter
        io_uring: use completion batching for poll rem/upd
        io_uring: single shot poll removal optimisation
        io_uring: poll rework
        io_uring: kill poll linking optimisation
        io_uring: move common poll bits
        io_uring: refactor poll update
        io_uring: remove double poll on poll update
        io_uring: code clean for some ctx usage
        io_uring: batch completion in prior_task_list
        io_uring: split io_req_complete_post() and add a helper
        io_uring: add helper for task work execution code
        io_uring: add a priority tw list for irq completion work
        io-wq: add helper to merge two wq_lists
        io_uring: reuse io_req_task_complete for timeouts
        io_uring: tweak iopoll CQE_SKIP event counting
        io_uring: simplify selected buf handling
        io_uring: move up io_put_kbuf() and io_put_rw_kbuf()
        ...
      42a7b4ed
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-5.17' of git://git.infradead.org/users/hch/dma-mapping · 7e7b6965
      Linus Torvalds authored
      Pull dma-mapping updates from Christoph Hellwig:
      
       - refactor the dma-direct coherent allocator
      
       - turn an macro into an inline in scatterlist.h (Logan Gunthorpe)
      
      * tag 'dma-mapping-5.17' of git://git.infradead.org/users/hch/dma-mapping:
        lib/scatterlist: cleanup macros into static inline functions
        dma-direct: add a dma_direct_use_pool helper
        dma-direct: factor the swiotlb code out of __dma_direct_alloc_pages
        dma-direct: drop two CONFIG_DMA_RESTRICTED_POOL conditionals
        dma-direct: warn if there is no pool for force unencrypted allocations
        dma-direct: fail allocations that can't be made coherent
        dma-direct: refactor the !coherent checks in dma_direct_alloc
        dma-direct: factor out a helper for DMA_ATTR_NO_KERNEL_MAPPING allocations
        dma-direct: clean up the remapping checks in dma_direct_alloc
        dma-direct: always leak memory that can't be re-encrypted
        dma-direct: don't call dma_set_decrypted for remapped allocations
        dma-direct: factor out dma_set_{de,en}crypted helpers
      7e7b6965
    • Linus Torvalds's avatar
      Merge tag 'locking_core_for_v5.17_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · daadb3bd
      Linus Torvalds authored
      Pull locking updates from Borislav Petkov:
       "Lots of cleanups and preparation. Highlights:
      
         - futex: Cleanup and remove runtime futex_cmpxchg detection
      
         - rtmutex: Some fixes for the PREEMPT_RT locking infrastructure
      
         - kcsan: Share owner_on_cpu() between mutex,rtmutex and rwsem and
           annotate the racy owner->on_cpu access *once*.
      
         - atomic64: Dead-Code-Elemination"
      
      [ Description above by Peter Zijlstra ]
      
      * tag 'locking_core_for_v5.17_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/atomic: atomic64: Remove unusable atomic ops
        futex: Fix additional regressions
        locking: Allow to include asm/spinlock_types.h from linux/spinlock_types_raw.h
        x86/mm: Include spinlock_t definition in pgtable.
        locking: Mark racy reads of owner->on_cpu
        locking: Make owner_on_cpu() into <linux/sched.h>
        lockdep/selftests: Adapt ww-tests for PREEMPT_RT
        lockdep/selftests: Skip the softirq related tests on PREEMPT_RT
        lockdep/selftests: Unbalanced migrate_disable() & rcu_read_lock().
        lockdep/selftests: Avoid using local_lock_{acquire|release}().
        lockdep: Remove softirq accounting on PREEMPT_RT.
        locking/rtmutex: Add rt_mutex_lock_nest_lock() and rt_mutex_lock_killable().
        locking/rtmutex: Squash self-deadlock check for ww_rt_mutex.
        locking: Remove rt_rwlock_is_contended().
        sched: Trigger warning if ->migration_disabled counter underflows.
        futex: Fix sparc32/m68k/nds32 build regression
        futex: Remove futex_cmpxchg detection
        futex: Ensure futex_atomic_cmpxchg_inatomic() is present
        kernel/locking: Use a pointer in ww_mutex_trylock().
      daadb3bd
    • Linus Torvalds's avatar
      Merge tag 'sched_core_for_v5.17_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6ae71436
      Linus Torvalds authored
      Pull scheduler updates from Borislav Petkov:
       "Mostly minor things this time; some highlights:
      
         - core-sched: Add 'Forced Idle' accounting; this allows to track how
           much CPU time is 'lost' due to core scheduling constraints.
      
         - psi: Fix for MEM_FULL; a task running reclaim would be counted as a
           runnable task and prevent MEM_FULL from being reported.
      
         - cpuacct: Long standing fixes for some cgroup accounting issues.
      
         - rt: Bandwidth timer could, under unusual circumstances, be failed
           to armed, leading to indefinite throttling."
      
      [ Description above by Peter Zijlstra ]
      
      * tag 'sched_core_for_v5.17_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/fair: Replace CFS internal cpu_util() with cpu_util_cfs()
        sched/fair: Cleanup task_util and capacity type
        sched/rt: Try to restart rt period timer when rt runtime exceeded
        sched/fair: Document the slow path and fast path in select_task_rq_fair
        sched/fair: Fix per-CPU kthread and wakee stacking for asym CPU capacity
        sched/fair: Fix detection of per-CPU kthreads waking a task
        sched/cpuacct: Make user/system times in cpuacct.stat more precise
        sched/cpuacct: Fix user/system in shown cpuacct.usage*
        cpuacct: Convert BUG_ON() to WARN_ON_ONCE()
        cputime, cpuacct: Include guest time in user time in cpuacct.stat
        psi: Fix PSI_MEM_FULL state when tasks are in memstall and doing reclaim
        sched/core: Forced idle accounting
        psi: Add a missing SPDX license header
        psi: Remove repeated verbose comment
      6ae71436
    • Linus Torvalds's avatar
      Merge tag 'Wcast-function-type-5.17-rc1' of... · 01367e86
      Linus Torvalds authored
      Merge tag 'Wcast-function-type-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux
      
      Pull cast-function-type warning addition from Gustavo A. R. Silva:
       "This globally enables -Wcast-function-type.
      
        We need to make sure new function cast mismatches are not introduced
        in the kernel in order to avoid tripping CFI checking"
      
      * tag 'Wcast-function-type-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux:
        Makefile: Enable -Wcast-function-type
      01367e86
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 3e3a138a
      Linus Torvalds authored
      Pull ARM updates from Russell King:
      
       - amba bus irq rework
      
       - add kfence support
      
       - support for Cortex M33 and M55 CPUs
      
       - kbuild updates for decompressor
      
       - let core code manage thread_info::cpu
      
       - avoid unpredictable NOP encoding in decompressor
      
       - reduce information printed in calltraces
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: reduce the information printed in call traces
        ARM: 9168/1: Add support for Cortex-M55 processor
        ARM: 9167/1: Add support for Cortex-M33 processor
        ARM: 9166/1: Support KFENCE for ARM
        ARM: 9165/1: mm: Provide is_write_fault()
        ARM: 9164/1: mm: Provide set_memory_valid()
        ARM: 9163/1: amba: Move of_amba_device_decode_irq() into amba_probe()
        ARM: 9162/1: amba: Kill sysfs attribute file of irq
        ARM: 9161/1: mm: mark private VM_FAULT_X defines as vm_fault_t
        ARM: 9159/1: decompressor: Avoid UNPREDICTABLE NOP encoding
        ARM: 9158/1: leave it to core code to manage thread_info::cpu
        ARM: 9154/1: decompressor: do not copy source files while building
      3e3a138a
  2. 11 Jan, 2022 21 commits
    • Linus Torvalds's avatar
      Merge tag 'for-5.17/parisc-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · c1eb8f6c
      Linus Torvalds authored
      Pull parisc architecture updates from Helge Deller:
      
       - Fix lpa and lpa_user defines (John David Anglin)
      
       - Fix symbol lookup of init functions with an __is_kernel() fix (Helge
         Deller)
      
       - Fix wrong pdc_toc_pim_11 and pdc_toc_pim_20 definitions (Helge
         Deller)
      
       - Add lws_atomic_xchg and lws_atomic_store syscalls (John David Anglin)
      
       - Rewrite light-weight syscall and futex code (John David Anglin)
      
       - Enable TOC (transfer of contents) feature unconditionally (Helge
         Deller)
      
       - Improve fault handler messages (John David Anglin)
      
       - Improve build process (Masahiro Yamada)
      
       - Reduce kernel code footprint of user access functions (Helge Deller)
      
       - Fix build error due to outX() macros (Bart Van Assche)
      
       - Ue default_groups in kobj_type in pdc_stable (Greg Kroah-Hartman)
      
       - Default to 16 CPUs on 32-bit kernel (Helge Deller)
      
      * tag 'for-5.17/parisc-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Default to 16 CPUs on 32-bit kernel
        sections: Fix __is_kernel() to include init ranges
        parisc: Re-use toc_stack as hpmc_stack
        parisc: Enable TOC (transfer of contents) feature unconditionally
        parisc: io: Improve the outb(), outw() and outl() macros
        parisc: pdc_stable: use default_groups in kobj_type
        parisc: Add kgdb io_module to read chars via PDC
        parisc: Fix pdc_toc_pim_11 and pdc_toc_pim_20 definitions
        parisc: Add lws_atomic_xchg and lws_atomic_store syscalls
        parisc: Rewrite light-weight syscall and futex code
        parisc: Enhance page fault termination message
        parisc: Don't call faulthandler_disabled() in do_page_fault()
        parisc: Switch user access functions to signal errors in r29 instead of r8
        parisc: Avoid calling faulthandler_disabled() twice
        parisc: Fix lpa and lpa_user defines
        parisc: Define depi_safe macro
        parisc: decompressor: do not copy source files while building
      c1eb8f6c
    • Linus Torvalds's avatar
      Merge tag 'x86_build_for_v5.17_rc1-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f18e2d87
      Linus Torvalds authored
      Pull missed x86 build updates from Borislav Petkov:
       "In the heat of the battle between me and the tip pull requests, I've
        sent you the tip:x86/build branch without the two top-most commits
        from Ingo (it appears I hadn't fast-forwarded my local branch, sorry
        about that).
      
        Therefore, here's a part 2 of x86/build for 5.17.
      
         - Make x86 defconfigs more useful by enabling
           CONFIG_LOCALVERSION_AUTO and CONFIG_KALLSYMS_ALL
      
        And while you merge that, I'll be at the blackboard, writing:
      
          I will always fast-forward local branches before tagging and sending pull requests to Linus.
          I will always fast-forward local branches before tagging and sending pull requests to Linus.
          I will always fast-forward local branches before tagging and sending pull requests..."
      
      * tag 'x86_build_for_v5.17_rc1-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kbuild: Enable CONFIG_KALLSYMS_ALL=y in the defconfigs
        x86/defconfig: Enable CONFIG_LOCALVERSION_AUTO=y in the defconfig
      f18e2d87
    • Linus Torvalds's avatar
      Merge tag 'efi-next-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi · f12fc75e
      Linus Torvalds authored
      Pull EFI updates from Ard Biesheuvel:
      
       - support taking the measurement of the initrd when loaded via the
         LoadFile2 protocol
      
       - kobject API cleanup from Greg
      
       - some header file whitespace fixes
      
      * tag 'efi-next-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi:
        efi: use default_groups in kobj_type
        efi/libstub: measure loaded initrd info into the TPM
        efi/libstub: consolidate initrd handling across architectures
        efi/libstub: x86/mixed: increase supported argument count
        efi/libstub: add prototype of efi_tcg2_protocol::hash_log_extend_event()
        include/linux/efi.h: Remove unneeded whitespaces before tabs
      f12fc75e
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml · f6921211
      Linus Torvalds authored
      Pull UML updates from Richard Weinberger:
      
       - set_fs removal
      
       - Devicetree support
      
       - Many cleanups from Al
      
       - Various virtio and build related fixes
      
      * tag 'for-linus-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml: (31 commits)
        um: virtio_uml: Allow probing from devicetree
        um: Add devicetree support
        um: Extract load file helper from initrd.c
        um: remove set_fs
        hostfs: Fix writeback of dirty pages
        um: Use swap() to make code cleaner
        um: header debriding - sigio.h
        um: header debriding - os.h
        um: header debriding - net_*.h
        um: header debriding - mem_user.h
        um: header debriding - activate_ipi()
        um: common-offsets.h debriding...
        um, x86: bury crypto_tfm_ctx_offset
        um: unexport handle_page_fault()
        um: remove a dangling extern of syscall_trace()
        um: kill unused cpu()
        uml/i386: missing include in barrier.h
        um: stop polluting the namespace with registers.h contents
        logic_io instance of iounmap() needs volatile on argument
        um: move amd64 variant of mmap(2) to arch/x86/um/syscalls_64.c
        ...
      f6921211
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs · 5672cdfb
      Linus Torvalds authored
      Pull JFFS2, UBI and UBIFS updates from Richard Weinberger:
       "JFFS2:
         - Fix for a deadlock in jffs2_write_begin()
      
        UBI:
         - Fixes in comments
      
        UBIFS:
         - Expose error counters in sysfs
         - Many bugfixes found by Hulk Robot and others"
      
      * tag 'for-linus-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs:
        jffs2: GC deadlock reading a page that is used in jffs2_write_begin()
        ubifs: read-only if LEB may always be taken in ubifs_garbage_collect
        ubifs: fix double return leb in ubifs_garbage_collect
        ubifs: fix slab-out-of-bounds in ubifs_change_lp
        ubifs: fix snprintf() length check
        ubifs: Document sysfs nodes
        ubifs: Export filesystem error counters
        ubifs: Error path in ubifs_remount_rw() seems to wrongly free write buffers
        ubifs: Make use of the helper macro kthread_run()
        ubi: Fix a mistake in comment
        ubifs: Fix spelling mistakes
      5672cdfb
    • Linus Torvalds's avatar
      Merge tag 'dlm-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm · 3f67eaed
      Linus Torvalds authored
      Pull dlm updates from David Teigland:
       "This set includes the normal collection of minor fixes and cleanups,
        new kmem caches for network messaging structs, a start on some basic
        tracepoints, and some new debugfs files for inserting test messages"
      
      * tag 'dlm-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm: (32 commits)
        fs: dlm: print cluster addr if non-cluster node connects
        fs: dlm: memory cache for lowcomms hotpath
        fs: dlm: memory cache for writequeue_entry
        fs: dlm: memory cache for midcomms hotpath
        fs: dlm: remove wq_alloc mutex
        fs: dlm: use event based wait for pending remove
        fs: dlm: check for pending users filling buffers
        fs: dlm: use list_empty() to check last iteration
        fs: dlm: fix build with CONFIG_IPV6 disabled
        fs: dlm: replace use of socket sk_callback_lock with sock_lock
        fs: dlm: don't call kernel_getpeername() in error_report()
        fs: dlm: fix potential buffer overflow
        fs: dlm:Remove unneeded semicolon
        fs: dlm: remove double list_first_entry call
        fs: dlm: filter user dlm messages for kernel locks
        fs: dlm: add lkb waiters debugfs functionality
        fs: dlm: add lkb debugfs functionality
        fs: dlm: allow create lkb with specific id range
        fs: dlm: add debugfs rawmsg send functionality
        fs: dlm: let handle callback data as void
        ...
      3f67eaed
    • Linus Torvalds's avatar
      Merge tag 'gfs2-v5.16-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · 8481c323
      Linus Torvalds authored
      Pull gfs2 updates from Andreas Gruenbacher:
       "Various minor gfs2 cleanups and fixes"
      
      * tag 'gfs2-v5.16-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
        gfs2: dump inode object for iopen glocks
        gfs2: Fix gfs2_instantiate description
        gfs2: Remove redundant check for GLF_INSTANTIATE_NEEDED
        gfs2: remove redundant set of INSTANTIATE_NEEDED
        gfs2: Fix __gfs2_holder_init function name in kernel-doc comment
      8481c323
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 1dbfae01
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "Convert ext4 to use the new mount API, and add support for the
        FS_IOC_GETFSLABEL and FS_IOC_SETFSLABEL ioctls.
      
        In addition the usual large number of clean ups and bug fixes, in
        particular for the fast_commit feature"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (48 commits)
        ext4: don't use the orphan list when migrating an inode
        ext4: use BUG_ON instead of if condition followed by BUG
        ext4: fix a copy and paste typo
        ext4: set csum seed in tmp inode while migrating to extents
        ext4: remove unnecessary 'offset' assignment
        ext4: remove redundant o_start statement
        ext4: drop an always true check
        ext4: remove unused assignments
        ext4: remove redundant statement
        ext4: remove useless resetting io_end_size in mpage_process_page()
        ext4: allow to change s_last_trim_minblks via sysfs
        ext4: change s_last_trim_minblks type to unsigned long
        ext4: implement support for get/set fs label
        ext4: only set EXT4_MOUNT_QUOTA when journalled quota file is specified
        ext4: don't use kfree() on rcu protected pointer sbi->s_qf_names
        ext4: avoid trim error on fs with small groups
        ext4: fix an use-after-free issue about data=journal writeback mode
        ext4: fix null-ptr-deref in '__ext4_journal_ensure_credits'
        ext4: initialize err_blk before calling __ext4_get_inode_loc
        ext4: fix a possible ABBA deadlock due to busy PA
        ...
      1dbfae01
    • Linus Torvalds's avatar
      Merge tag 'xfs-5.17-merge-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 11fc88c2
      Linus Torvalds authored
      Pull xfs updates from Darrick Wong:
       "The big new feature here is that the mount code now only bothers to
        try to free stale COW staging extents if the fs unmounted uncleanly.
        This should reduce mount times, particularly on filesystems supporting
        reflink and containing a large number of allocation groups.
      
        Everything else this cycle are bugfixes, as the iomap folios
        conversion should be plenty enough excitement for anyone. That and I
        ran out of brain bandwidth after Thanksgiving last year.
      
        Summary:
      
         - Fix log recovery with da btree buffers when metauuid is in use.
      
         - Fix type coercion problems in xattr buffer size validation.
      
         - Fix a bug in online scrub dir leaf bestcount checking.
      
         - Only run COW recovery when recovering the log.
      
         - Fix symlink target buffer UAF problems and symlink locking problems
           by not exposing xfs innards to the VFS.
      
         - Fix incorrect quotaoff lock usage.
      
         - Don't let transactions cancel cleanly if they have deferred work
           items attached.
      
         - Fix a UAF when we're deciding if we need to relog an intent item.
      
         - Reduce kvmalloc overhead for log shadow buffers.
      
         - Clean up sysfs attr group usage.
      
         - Fix a bug where scrub's bmap/rmap checking could race with a quota
           file block allocation due to insufficient locking.
      
         - Teach scrub to complain about invalid project ids"
      
      * tag 'xfs-5.17-merge-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: warn about inodes with project id of -1
        xfs: hold quota inode ILOCK_EXCL until the end of dqalloc
        xfs: Remove redundant assignment of mp
        xfs: reduce kvmalloc overhead for CIL shadow buffers
        xfs: sysfs: use default_groups in kobj_type
        xfs: prevent UAF in xfs_log_item_in_current_chkpt
        xfs: prevent a WARN_ONCE() in xfs_ioc_attr_list()
        xfs: Fix comments mentioning xfs_ialloc
        xfs: check sb_meta_uuid for dabuf buffer recovery
        xfs: fix a bug in the online fsck directory leaf1 bestcount check
        xfs: only run COW extent recovery when there are no live extents
        xfs: don't expose internal symlink metadata buffers to the vfs
        xfs: fix quotaoff mutex usage now that we don't support disabling it
        xfs: shut down filesystem if we xfs_trans_cancel with deferred work items
      11fc88c2
    • Linus Torvalds's avatar
      Merge tag 'for-5.17-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · d601e58c
      Linus Torvalds authored
      Pull btrfs updates from David Sterba:
       "This end of the year branch is intentionally not that exciting. Most
        of the changes are under the hood, but there are some minor user
        visible improvements and several performance improvements too.
      
        Features:
      
         - make send work with concurrent block group relocation.
      
           We're not allowed to prevent send failing or silently producing
           some bad stream but with more fine grained locking and checks it's
           possible. The send vs deduplication exclusion could reuse the same
           logic in the future.
      
         - new exclusive operation 'balance paused' to allow adding a device
           to filesystem with paused balance
      
         - new sysfs file for fsid stored in the per-device directory to help
           distinguish devices when seeding is enabled, the fsid may differ
           from the one reported by the filesystem
      
        Performance improvements:
      
         - less metadata needed for directory logging, directory deletion is
           20-40% faster
      
         - in zoned mode, cache zone information during mount to speed up
           repeated queries (about 50% speedup)
      
         - free space tree entries get indexed and searched by size (latency
           -30%, search run time -30%)
      
         - less contention in tree node locking when inserting a key and no
           splits are needed (files/sec in fsmark improves by 1-20%)
      
        Fixes:
      
         - fix ENOSPC failure when attempting direct IO write into NOCOW range
      
         - fix deadlock between quota enable and other quota operations
      
         - global reserve minimum calculations fixed to account for free space
           tree
      
         - in zoned mode, fix condition for chunk allocation that may not find
           the right zone for reuse and could lead to early ENOSPC
      
        Core:
      
         - global reserve stealing got simplified and cleaned up in evict
      
         - remove async transaction commit based on manual transaction refs,
           reuse existing kthread and mechanisms to let it commit transaction
           before timeout
      
         - preparatory work for extent tree v2, add wrappers for global tree
           roots, truncation path cleanups
      
         - remove readahead framework, it's a bit overengineered and used only
           for scrub, and yet it does not cover all its needs, there is
           another readahead built in the b-tree search that is now used,
           performance drop on HDD is about 5% which is acceptable and scrub
           is often throttled anyway, on SSDs there's no reported drop but
           slight improvement
      
         - self tests report extent tree state when error occurs
      
         - replace assert with debugging information when an uncommitted
           transaction is found at unmount time
      
        Other:
      
         - error handling improvements
      
         - other cleanups and refactoring"
      
      * tag 'for-5.17-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (115 commits)
        btrfs: output more debug messages for uncommitted transaction
        btrfs: respect the max size in the header when activating swap file
        btrfs: fix argument list that the kdoc format and script verified
        btrfs: remove unnecessary parameter type from compression_decompress_bio
        btrfs: selftests: dump extent io tree if extent-io-tree test failed
        btrfs: scrub: cleanup the argument list of scrub_stripe()
        btrfs: scrub: cleanup the argument list of scrub_chunk()
        btrfs: remove reada infrastructure
        btrfs: scrub: use btrfs_path::reada for extent tree readahead
        btrfs: scrub: remove the unnecessary path parameter for scrub_raid56_parity()
        btrfs: refactor unlock_up
        btrfs: skip transaction commit after failure to create subvolume
        btrfs: zoned: fix chunk allocation condition for zoned allocator
        btrfs: add extent allocator hook to decide to allocate chunk or not
        btrfs: zoned: unset dedicated block group on allocation failure
        btrfs: zoned: drop redundant check for REQ_OP_ZONE_APPEND and btrfs_is_zoned
        btrfs: zoned: sink zone check into btrfs_repair_one_zone
        btrfs: zoned: simplify btrfs_check_meta_write_pointer
        btrfs: zoned: encapsulate inode locking for zoned relocation
        btrfs: sysfs: add devinfo/fsid to retrieve actual fsid from the device
        ...
      d601e58c
    • Linus Torvalds's avatar
      Merge tag 'erofs-for-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs · 9149fe8b
      Linus Torvalds authored
      Pull erofs updates from Gao Xiang:
       "In this cycle, tail-packing data inline for compressed files is now
        supported so that tail pcluster can be stored and read together with
        inode metadata in order to save data I/O and storage space.
      
        In addition to that, to prepare for the upcoming subpage, folio and
        fscache features, we also introduce meta buffers to get rid of
        erofs_get_meta_page() since it was too close to the page itself.
      
        In addition, in order to show supported kernel features and control
        sync decompression strategy, new sysfs nodes are introduced in this
        cycle as well.
      
        Summary:
      
         - add sysfs interface and a sysfs node to control sync decompression
      
         - add tail-packing inline support for compressed files
      
         - get rid of erofs_get_meta_page()"
      
      * tag 'erofs-for-5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
        erofs: use meta buffers for zmap operations
        erofs: use meta buffers for xattr operations
        erofs: use meta buffers for super operations
        erofs: use meta buffers for inode operations
        erofs: introduce meta buffer operations
        erofs: add on-disk compressed tail-packing inline support
        erofs: support inline data decompression
        erofs: support unaligned data decompression
        erofs: introduce z_erofs_fixup_insize
        erofs: tidy up z_erofs_lz4_decompress
        erofs: clean up erofs_map_blocks tracepoints
        erofs: Replace zero-length array with flexible-array member
        erofs: add sysfs node to control sync decompression strategy
        erofs: add sysfs interface
        erofs: rename lz4_0pading to zero_padding
      9149fe8b
    • Paul E. McKenney's avatar
      drivers/pcmcia: Fix ifdef covering yenta_pm_ops · 579f3a6d
      Paul E. McKenney authored
      Currently, yenta_dev_suspend_noirq(), yenta_dev_resume_noirq(), and
      yenta_pm_ops are covered by "#ifdef CONFIG_PM", which results in
      compiler warnings in kernels built with CONFIG_PM_SLEEP=n and
      CONFIG_PM=y:
      
        drivers/pcmcia/yenta_socket.c:1322:12: warning: ‘yenta_dev_resume_noirq’ defined but not used [-Wunused-function]
         1322 | static int yenta_dev_resume_noirq(struct device *dev)
              |            ^~~~~~~~~~~~~~~~~~~~~~
        drivers/pcmcia/yenta_socket.c:1303:12: warning: ‘yenta_dev_suspend_noirq’ defined but not used [-Wunused-function]
         1303 | static int yenta_dev_suspend_noirq(struct device *dev)
              |            ^~~~~~~~~~~~~~~~~~~~~~~
      
      This affects kernels built without suspend and hibernation.
      
      Avoid these warnings by using "#ifdef CONFIG_PM_SLEEP".
      
      Fixes: 3daaf2c7 ("pcmcia: Make use of the helper macro SET_NOIRQ_SYSTEM_SLEEP_PM_OPS()")
      Signed-off-by: default avatarPaul E. McKenney <paulmck@kernel.org>
      Cc: Masahiro Yamada <masahiroy@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      579f3a6d
    • Linus Torvalds's avatar
      Merge tag 'fs.idmapped.v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux · 5dfbfe71
      Linus Torvalds authored
      Pull fs idmapping updates from Christian Brauner:
       "This contains the work to enable the idmapping infrastructure to
        support idmapped mounts of filesystems mounted with an idmapping.
      
        In addition this contains various cleanups that avoid repeated
        open-coding of the same functionality and simplify the code in quite a
        few places.
      
        We also finish the renaming of the mapping helpers we started a few
        kernel releases back and move them to a dedicated header to not
        continue polluting the fs header needlessly with low-level idmapping
        helpers. With this series the fs header only contains idmapping
        helpers that interact with fs objects.
      
        Currently we only support idmapped mounts for filesystems mounted
        without an idmapping themselves. This was a conscious decision
        mentioned in multiple places (cf. [1]).
      
        As explained at length in [3] it is perfectly fine to extend support
        for idmapped mounts to filesystem's mounted with an idmapping should
        the need arise. The need has been there for some time now (cf. [2]).
      
        Before we can port any filesystem that is mountable with an idmapping
        to support idmapped mounts in the coming cycles, we need to first
        extend the mapping helpers to account for the filesystem's idmapping.
        This again, is explained at length in our documentation at [3] and
        also in the individual commit messages so here's an overview.
      
        Currently, the low-level mapping helpers implement the remapping
        algorithms described in [3] in a simplified manner as we could rely on
        the fact that all filesystems supporting idmapped mounts are mounted
        without an idmapping.
      
        In contrast, filesystems mounted with an idmapping are very likely to
        not use an identity mapping and will instead use a non-identity
        mapping. So the translation step from or into the filesystem's
        idmapping in the remapping algorithm cannot be skipped for such
        filesystems.
      
        Non-idmapped filesystems and filesystems not supporting idmapped
        mounts are unaffected by this change as the remapping algorithms can
        take the same shortcut as before. If the low-level helpers detect that
        they are dealing with an idmapped mount but the underlying filesystem
        is mounted without an idmapping we can rely on the previous shortcut
        and can continue to skip the translation step from or into the
        filesystem's idmapping. And of course, if the low-level helpers detect
        that they are not dealing with an idmapped mount they can simply
        return the relevant id unchanged; no remapping needs to be performed
        at all.
      
        These checks guarantee that only the minimal amount of work is
        performed. As before, if idmapped mounts aren't used the low-level
        helpers are idempotent and no work is performed at all"
      
      Link: 2ca4dcc4 ("fs/mount_setattr: tighten permission checks") [1]
      Link: https://github.com/containers/podman/issues/10374 [2]
      Link: Documentations/filesystems/idmappings.rst [3]
      Link: a65e58e7 ("fs: document and rename fsid helpers") [4]
      
      * tag 'fs.idmapped.v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux:
        fs: support mapped mounts of mapped filesystems
        fs: add i_user_ns() helper
        fs: port higher-level mapping helpers
        fs: remove unused low-level mapping helpers
        fs: use low-level mapping helpers
        docs: update mapping documentation
        fs: account for filesystem mappings
        fs: tweak fsuidgid_has_mapping()
        fs: move mapping helpers
        fs: add is_idmapped_mnt() helper
      5dfbfe71
    • Linus Torvalds's avatar
      Merge tag 'integrity-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity · 84bfcc0b
      Linus Torvalds authored
      Pull integrity subsystem updates from Mimi Zohar:
       "The few changes are all kexec related:
      
         - The MOK keys are loaded onto the .platform keyring in order to
           verify the kexec kernel image signature.
      
           However, the MOK keys should only be trusted when secure boot is
           enabled. Before loading the MOK keys onto the .platform keyring,
           make sure the system is booted in secure boot mode.
      
         - When carrying the IMA measurement list across kexec, limit dumping
           the measurement list to when dynamic debug or CONFIG_DEBUG is
           enabled.
      
         - kselftest: add kexec_file_load selftest support for PowerNV and
           other cleanup"
      
      * tag 'integrity-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
        selftests/kexec: Enable secureboot tests for PowerPC
        ima: silence measurement list hexdump during kexec
        selftests/kexec: update searching for the Kconfig
        selftest/kexec: fix "ignored null byte in input" warning
        integrity: Do not load MOK and MOKx when secure boot be disabled
        ima: Fix undefined arch_ima_get_secureboot() and co
      84bfcc0b
    • Linus Torvalds's avatar
      Merge tag 'audit-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit · 5d7e5223
      Linus Torvalds authored
      Pull audit updates from Paul Moore:
       "Four audit patches for v5.17:
      
         - Harden the code through additional use of the struct_size() macro
           and zero-length arrays to flexible-array conversions.
      
         - Ensure that processes which generate userspace audit records are
           not exempt from the kernel's audit throttling when the audit queues
           are being overrun"
      
      * tag 'audit-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit:
        audit: replace zero-length array with flexible-array member
        audit: use struct_size() helper in audit_[send|make]_reply()
        audit: ensure userspace is penalized the same as the kernel when under pressure
        audit: use struct_size() helper in kmalloc()
      5d7e5223
    • Linus Torvalds's avatar
      Merge tag 'selinux-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux · a135ce44
      Linus Torvalds authored
      Pull selinux updates from Paul Moore:
       "Nothing too significant, but five SELinux patches for v5.17 that do
        the following:
      
         - Harden the code through additional use of the struct_size() macro
      
         - Plug some memory leaks
      
         - Clean up the code via removal of the security_add_mnt_opt() LSM
           hook and minor tweaks to selinux_add_opt()
      
         - Rename security_task_getsecid_subj() to better reflect its actual
           behavior/use - now called security_current_getsecid_subj()"
      
      * tag 'selinux-pr-20220110' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux:
        selinux: minor tweaks to selinux_add_opt()
        selinux: fix potential memleak in selinux_add_opt()
        security,selinux: remove security_add_mnt_opt()
        selinux: Use struct_size() helper in kmalloc()
        lsm: security_task_getsecid_subj() -> security_current_getsecid_subj()
      a135ce44
    • Linus Torvalds's avatar
      Merge tag 'tpmdd-next-v5.17-fixed' of... · dabd40ec
      Linus Torvalds authored
      Merge tag 'tpmdd-next-v5.17-fixed' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd
      
      Pull TPM updates from Jarkko Sakkinen:
       "Other than bug fixes for TPM, this includes a patch for asymmetric
        keys to allow to look up and verify with self-signed certificates
        (keys without so called AKID - Authority Key Identifier) using a new
        "dn:" prefix in the query"
      
      * tag 'tpmdd-next-v5.17-fixed' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd:
        lib: remove redundant assignment to variable ret
        tpm: fix NPE on probe for missing device
        tpm: fix potential NULL pointer access in tpm_del_char_device
        tpm: Add Upgrade/Reduced mode support for TPM2 modules
        char: tpm: cr50: Set TPM_FIRMWARE_POWER_MANAGED based on device property
        keys: X.509 public key issuer lookup without AKID
        tpm_tis: Fix an error handling path in 'tpm_tis_core_init()'
        tpm: tpm_tis_spi_cr50: Add default RNG quality
        tpm/st33zp24: drop unneeded over-commenting
        tpm: add request_locality before write TPM_INT_ENABLE
      dabd40ec
    • Linus Torvalds's avatar
      Merge branch 'pcmcia-next' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux · 4aa1b825
      Linus Torvalds authored
      Pull pcmcia updates from Dominik Brodowski:
       "A number of odd cleanups and fixes, including one for a small race in
        the handling of the pccardd kernel thread"
      
      * 'pcmcia-next' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux:
        pcmcia: fix setting of kthread task states
        MAINTAINERS: update PCMCIA tree
        pcmcia: use sysfs_emit{,_at} for sysfs output
        pcmcia: make pcmcia_release_io() void, as no-one is interested in return value
        pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in nonstatic_find_mem_region()
        pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in __nonstatic_find_io_region()
        pcmcia: comment out unused exca_readw() function
        pcmcia: Make use of the helper macro SET_NOIRQ_SYSTEM_SLEEP_PM_OPS()
        pcmcia: clean up dead drivers for CompuLab CM-X255/CM-X270 boards
      4aa1b825
    • Linus Torvalds's avatar
      Merge tag 'gpio-updates-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · c288ea67
      Linus Torvalds authored
      Pull gpio updates from Bartosz Golaszewski:
       "The gpio-sim module is back, this time without any changes to
        configfs. This results in a less elegant user-space interface but I
        never got any follow-up on the committable items and didn't want to
        delay this module for several more months.
      
        Other than that we have support for several new models and some
        support going away. We started working on converting GPIO drivers to
        using fwnode exclusively in order to limit references to OF symbols to
        gpiolib-of.c exclusively. We also have regular tweaks and improvements
        all over the place.
      
        Summary:
      
         - new testing module: gpio-sim that is scheduled to replace
           gpio-mockup
      
         - initial changes aiming at converting all GPIO drivers to using the
           fwnode interface and limiting any references to OF symbols to
           gpiolib-of.c
      
         - add support for Tegra234 and Tegra241 to gpio-tegra186
      
         - add support for new models (SSD201 and SSD202D) to gpio-msc313
      
         - add basic support for interrupts to gpio-aggregator
      
         - add support for AMDIF031 HID device to gpio-amdpt
      
         - drop support for unused platforms in gpio-xlp
      
         - cleanup leftovers from the removal of the legacy Samsung Exynos
           GPIO driver
      
         - use raw spinlocks in gpio-aspeed and gpio-aspeed-sgpio to make
           PREEMPT_RT happy
      
         - generalize the common 'ngpios' device property by reading it in the
           core gpiolib code so that we can remove duplicate reads from
           drivers
      
         - allow line names from device properties to override names set by
           drivers
      
         - code shrink in gpiod_add_lookup_table()
      
         - add new model to the DT bindings for gpio-vf610
      
         - convert DT bindings for tegra devices to YAML
      
         - improvements to interrupt handling in gpio-rcar and gpio-rockchip
      
         - updates to intel drivers from Andy (details in the merge commit)
      
         - some minor tweaks, improvements and coding-style fixes all around
           the subsystem"
      
      * tag 'gpio-updates-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (59 commits)
        gpio: rcar: Propagate errors from devm_request_irq()
        gpio: rcar: Use platform_get_irq() to get the interrupt
        gpio: ts5500: Use platform_get_irq() to get the interrupt
        gpio: dwapb: Switch to use fwnode instead of of_node
        gpiolib: acpi: make fwnode take precedence in struct gpio_chip
        dt-bindings: gpio: samsung: drop unused bindings
        gpio: max3191x: Use bitmap_free() to free bitmap
        gpio: regmap: Switch to use fwnode instead of of_node
        gpio: tegra186: Add support for Tegra241
        dt-bindings: gpio: Add Tegra241 support
        gpio: brcmstb: Use local variable to access OF node
        gpio: Remove unused local OF node pointers
        gpio: sim: add missing fwnode_handle_put() in gpio_sim_probe()
        gpio: msc313: Add support for SSD201 and SSD202D
        gpio: msc313: Code clean ups
        dt-bindings: gpio: msc313: Add offsets for ssd20xd
        dt-bindings: gpio: msc313: Add compatible for ssd20xd
        gpio: sim: fix uninitialized ret variable
        gpio: Propagate firmware node from a parent device
        gpio: Setup parent device and get rid of unnecessary of_node assignment
        ...
      c288ea67
    • Linus Torvalds's avatar
      Merge tag 'mmc-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 1151e3cd
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "MMC core:
         - Use common polling loop for CMD1
         - Add support for DT compatibles for card quirks and use it for ti,wl1251
         - Fixup storing of the OCR mask for MMC_QUIRK_NONSTD_SDIO
      
        MMC host:
         - dw_mmc: Add support for MMC_GEN_CMDs
         - dw_mmc: Fixup calculation of the data timeout
         - dw_mmc-exynos: Add support for the ARTPEC-8 variant
         - jz4740: Add support for bi-directional DMA channels
         - mmci: Add support for eMMC HS200 mode for the stm32 sdmmc variant
         - mmci: Add support for stm32 sdmmc variant revision v2.2
         - mtk-sd: A couple of various minor improvements
         - omap_hsmmc: Drop redundant initialization for the ti,wl1251 chip
         - sdhci-esdhc-imx: Add support for the i.MXRT series variant
         - sdhci-esdhc-imx: Add Haibo Chen as maintainer
         - sdhci-pci: Add support for the Intel ADL variant
         - sdhci-pci-gli: GL975[50]: Add support for the Apple ARM64 variant
         - sdhci-pci-o2micro: Improve support for SDR104/HS200"
      
      * tag 'mmc-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (54 commits)
        dt-bindings: mmc: synopsys-dw-mshc: integrate Altera and Imagination
        mmc: pwrseq: Use bitmap_free() to free bitmap
        dt-bindings: mmc: PL18x stop relying on order of dma-names
        dt-bindings: mmc: sdhci-msm: Add compatible string for msm8994
        mmc: au1xmmc: propagate errors from platform_get_irq()
        mmc: sdhci-pci-o2micro: Restore the SD clock's base clock frequency
        mmc: sdhci-pci-o2micro: Improve card input timing at SDR104/HS200 mode
        mmc: mtk-sd: Assign src_clk parent to src_clk_cg for legacy DTs
        mmc: mtk-sd: Fix usage of devm_clk_get_optional()
        mmc: mtk-sd: Take action for no-sdio device-tree parameter
        mmc: mtk-sd: Use BIT() and GENMASK() macros to describe fields
        mmc: mtk-sd: Use readl_poll_timeout instead of open-coded polling
        MAINTAINERS: Add i.MX sdhci maintainer
        mmc: jz4740: Support using a bi-directional DMA channel
        dt-bindings: mmc: ingenic: Support using bi-directional DMA channel
        mmc: dw_mmc: Do not wait for DTO in case of error
        mmc: dw_mmc: Add driver callbacks for data read timeout
        mmc: dw_mmc-exynos: Add support for ARTPEC-8
        dt-bindings: mmc: exynos-dw-mshc: Add support for ARTPEC-8
        mmc: meson-mx-sdio: add IRQ check
        ...
      1151e3cd
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 1cc8d14c
      Linus Torvalds authored
      Pull backlight updates from Lee Jones:
       "New Functionality:
         - Prepare and add support for ACPI enumeration; lp855x_bl
      
        Fix-ups:
         - Use Regmap API to conduct endianess conversions; qcom-wled
         - Remove superfluous code; qcom-wled
         - Fix formatting issues; qcom-wled
      
        Bug Fixes:
         - Provide error checking/validation of DT supplied strings; qcom-wled
         - Request dynamic amount of values when reading from DT; qcom-wled
         - Fix off-by-one issue when reading from DT; qcom-wled"
      
      * tag 'backlight-next-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight: qcom-wled: Respect enabled-strings in set_brightness
        backlight: qcom-wled: Remove unnecessary double whitespace
        backlight: qcom-wled: Provide enabled_strings default for WLED 4 and 5
        backlight: qcom-wled: Remove unnecessary 4th default string in WLED3
        backlight: qcom-wled: Override default length with qcom,enabled-strings
        backlight: qcom-wled: Fix off-by-one maximum with default num_strings
        backlight: qcom-wled: Use cpu_to_le16 macro to perform conversion
        backlight: qcom-wled: Pass number of elements to read to read_u32_array
        backlight: qcom-wled: Validate enabled string indices in DT
        backlight: lp855x: Add support ACPI enumeration
        backlight: lp855x: Add dev helper variable to lp855x_probe()
        backlight: lp855x: Move device_config setting out of lp855x_configure()
      1cc8d14c