1. 07 May, 2024 17 commits
  2. 11 Apr, 2024 1 commit
  3. 10 Apr, 2024 7 commits
  4. 14 Mar, 2024 3 commits
    • Linus Torvalds's avatar
      Merge tag 'hid-for-linus-2024031301' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 3e78a6c0
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - support for the following Bluetooth devices from Samsung: Samsung
         wireless {Keyboard, GamePad, Action Mouse, Book Cover, Universal
         Keyboard, HOGP Keyboard} (Sandeep C S)
      
       - second version of code for applying proper quirk depending on
         firmware version for lenovo/cptkbd (Mikhail Khvainitski)
      
       - lenovo/cptkbd firmware-dependent quirk (Mikhail Khvainitski)
      
       - assorted fixes and optimizations for amd-sfh (Basavaraj Natikar)
      
       - dead code and dead data structures removal (Jiri Slaby, Jiapeng
         Chong)
      
      * tag 'hid-for-linus-2024031301' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (25 commits)
        HID: amd_sfh: Set the AMD SFH driver to depend on x86
        HID: input: avoid polling stylus battery on Chromebook Pompom
        HID: amd_sfh: Extend MP2 register access to SFH
        HID: amd_sfh: Improve boot time when SFH is available
        HID: amd_sfh: Avoid disabling the interrupt
        HID: amd_sfh: Update HPD sensor structure elements
        HID: amd_sfh: Increase sensor command timeout
        HID: intel-ish-hid: ipc: Add Arrow Lake PCI device ID
        HID: nintendo: Remove some unused functions
        HID: hid-prodikeys: remove struct pk_device
        HID: hid-prodikeys: remove unused struct pcmidi_snd members
        HID: hid-multitouch: remove unused mt_application::dev_time
        HID: hid-lg3ff: remove unused struct lg3ff_device
        HID: protect hid_device::bpf by CONFIG_HID_BPF
        HID: wacom: remove unused hid_data::pressure
        HID: apple: remove unused members from struct apple_sc_backlight
        HID: wacom: Clean up use of struct->wacom_wac
        HID: samsung: Add Samsung wireless bookcover and universal keyboard support
        HID: samsung: Add Samsung wireless action mouse support
        HID: samsung: Add Samsung wireless gamepad support
        ...
      3e78a6c0
    • Linus Torvalds's avatar
      Merge tag 'auxdisplay-v6.9-1' of... · b345ff69
      Linus Torvalds authored
      Merge tag 'auxdisplay-v6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-auxdisplay
      
      Pull auxdisplay updates from Andy Shevchenko:
      
       - New driver for GPIO based 7-segment LED display (Chris Packham)
      
       - New driver for Maxim MAX6958/6959 I²C 7-segment LED display
         controller
      
       - Refactor linedisp library to make the above happen
      
       - Update Holtek HT16k33 driver to follow the linedisp refactoring
      
       - Convert .remove to return void in platform drivers (Uwe Kleine-König)
      
       - Fix DT schemas (Krzysztof Kozlowski)
      
       - Refresh MAINTAINERS database
      
      * tag 'auxdisplay-v6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-auxdisplay: (27 commits)
        auxdisplay: img-ascii-lcd: Convert to platform remove callback returning void
        auxdisplay: hd44780: Convert to platform remove callback returning void
        auxdisplay: cfag12864bfb: Convert to platform remove callback returning void
        auxdisplay: seg-led-gpio: Import linedisp namespace
        dt-bindings: auxdisplay: Add bindings for generic 7-segment LED
        auxdisplay: Add 7-segment LED display driver
        auxdisplay: Add driver for MAX695x 7-segment LED controllers
        dt-bindings: auxdisplay: Add Maxim MAX6958/6959
        auxdisplay: ht16k33: Drop struct ht16k33_seg
        auxdisplay: ht16k33: Switch to use line display character mapping
        auxdisplay: ht16k33: Define a few helper macros
        auxdisplay: ht16k33: Move ht16k33_linedisp_ops down
        auxdisplay: ht16k33: Add default to switch-cases
        auxdisplay: linedisp: Allocate buffer for the string
        auxdisplay: linedisp: Add support for overriding character mapping
        auxdisplay: linedisp: Provide struct linedisp_ops for future extension
        auxdisplay: linedisp: Move exported symbols to a namespace
        auxdisplay: linedisp: Add missing header(s)
        auxdisplay: linedisp: Unshadow error codes in ->store()
        auxdisplay: linedisp: Use unique number for id
        ...
      b345ff69
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2024-03-13' of https://gitlab.freedesktop.org/drm/kernel · 480e035f
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "Highlights are usual, more AMD IP blocks for future hw, i915/xe
        changes, Displayport tunnelling support for i915, msm YUV over DP
        changes, new tests for ttm, but its mostly a lot of stuff all over the
        place from lots of people.
      
        core:
         - EDID cleanups
         - scheduler error handling fixes
         - managed: add drmm_release_action() with tests
         - add ratelimited drm debug print
         - DPCD PSR early transport macro
         - DP tunneling and bandwidth allocation helpers
         - remove built-in edids
         - dp: Avoid AUX transfers on powered-down displays
         - dp: Add VSC SDP helpers
      
        cross drivers:
         - use new drm print helpers
         - switch to ->read_edid callback
         - gem: add stats for shared buffers plus updates to amdgpu, i915, xe
      
        syncobj:
         - fixes to waiting and sleeping
      
        ttm:
         - add tests
         - fix errno codes
         - simply busy-placement handling
         - fix page decryption
      
        media:
         - tc358743: fix v4l device registration
      
        video:
         - move all kernel parameters for video behind CONFIG_VIDEO
      
        sound:
         - remove <drm/drm_edid.h> include from header
      
        ci:
         - add tests for msm
         - fix apq8016 runner
      
        efifb:
         - use copy of global screen_info state
      
        vesafb:
         - use copy of global screen_info state
      
        simplefb:
         - fix logging
      
        bridge:
         - ite-6505: fix DP link-training bug
         - samsung-dsim: fix error checking in probe
         - samsung-dsim: add bsh-smm-s2/pro boards
         - tc358767: fix regmap usage
         - imx: add i.MX8MP HDMI PVI plus DT bindings
         - imx: add i.MX8MP HDMI TX plus DT bindings
         - sii902x: fix probing and unregistration
         - tc358767: limit pixel PLL input range
         - switch to new drm_bridge_read_edid() interface
      
        panel:
         - ltk050h3146w: error-handling fixes
         - panel-edp: support delay between power-on and enable; use put_sync
           in unprepare; support Mediatek MT8173 Chromebooks, BOE NV116WHM-N49
           V8.0, BOE NV122WUM-N41, CSO MNC207QS1-1 plus DT bindings
         - panel-lvds: support EDT ETML0700Z9NDHA plus DT bindings
         - panel-novatek: FRIDA FRD400B25025-A-CTK plus DT bindings
         - add BOE TH101MB31IG002-28A plus DT bindings
         - add EDT ETML1010G3DRA plus DT bindings
         - add Novatek NT36672E LCD DSI plus DT bindings
         - nt36523: support 120Hz timings, fix includes
         - simple: fix display timings on RK32FN48H
         - visionox-vtdr6130: fix initialization
         - add Powkiddy RGB10MAX3 plus DT bindings
         - st7703: support panel rotation plus DT bindings
         - add Himax HX83112A plus DT bindings
         - ltk500hd1829: add support for ltk101b4029w and admatec 9904370
         - simple: add BOE BP082WX1-100 8.2" panel plus DT bindungs
      
        panel-orientation-quirks:
         - GPD Win Mini
      
        amdgpu:
         - Validate DMABuf imports in compute VMs
         - Add RAS ACA framework
         - PSP 13 fixes
         - Misc code cleanups
         - Replay fixes
         - Atom interpretor PS, WS bounds checking
         - DML2 fixes
         - Audio fixes
         - DCN 3.5 Z state fixes
         - Remove deprecated ida_simple usage
         - UBSAN fixes
         - RAS fixes
         - Enable seq64 infrastructure
         - DC color block enablement
         - Documentation updates
         - DC documentation updates
         - DMCUB updates
         - ATHUB 4.1 support
         - LSDMA 7.0 support
         - JPEG DPG support
         - IH 7.0 support
         - HDP 7.0 support
         - VCN 5.0 support
         - SMU 13.0.6 updates
         - NBIO 7.11 updates
         - SDMA 6.1 updates
         - MMHUB 3.3 updates
         - DCN 3.5.1 support
         - NBIF 6.3.1 support
         - VPE 6.1.1 support
      
        amdkfd:
         - Validate DMABuf imports in compute VMs
         - SVM fixes
         - Trap handler updates and enhancements
         - Fix cache size reporting
         - Relocate the trap handler
      
        radeon:
         - Atom interpretor PS, WS bounds checking
         - Misc code cleanups
      
        xe:
         - new query for GuC submission version
         - Remove unused persistent exec_queues
         - Add vram frequency sysfs attributes
         - Add the flag XE_VM_BIND_FLAG_DUMPABLE
         - Drop pre-production workarounds
         - Drop kunit tests for unsupported platforms
         - Start pumbling SR-IOV support with memory based interrupts for VF
         - Allow to map BO in GGTT with PAT index corresponding to XE_CACHE_UC
           to work with memory based interrupts
         - Add GuC Doorbells Manager as prep work SR-IOV
         - Implement additional workarounds for xe2 and MTL
         - Program a few registers according to perfomance guide spec for Xe2
         - Fix remaining 32b build issues and enable it back
         - Fix build with CONFIG_DEBUG_FS=n
         - Fix warnings from GuC ABI headers
         - Introduce Relay Communication for SR-IOV for VF <-> GuC <-> PF
         - Release mmap mappings on rpm suspend
         - Disable mid-thread preemption when not properly supported by
           hardware
         - Fix xe_exec by reserving extra fence slot for CPU bind
         - Fix xe_exec with full long running exec queue
         - Canonicalize addresses where needed for Xe2 and add to devcoredum
         - Toggle USM support for Xe2
         - Only allow 1 ufence per exec / bind IOCTL
         - Add GuC firmware loading for Lunar Lake
         - Add XE_VMA_PTE_64K VMA flag
      
        i915:
         - Add more ADL-N PCI IDs
         - Enable fastboot also on older platforms
         - Early transport for panel replay and PSR
         - New ARL PCI IDs
         - DP TPS4 PHY test pattern support
         - Unify and improve VSC SDP for PSR and non-PSR cases
         - Refactor memory regions and improve debug logging
         - Rework global state serialization
         - Remove unused CDCLK divider fields
         - Unify HDCP connector logging format
         - Use display instead of graphics version in display code
         - Move VBT and opregion debugfs next to the implementation
         - Abstract opregion interface, use opaque type
         - MTL fixes
         - HPD handling fixes
         - Add GuC submission interface version query
         - Atomically invalidate userptr on mmu-notifier
         - Update handling of MMIO triggered reports
         - Don't make assumptions about intel_wakeref_t type
         - Extend driver code of Xe_LPG to Xe_LPG+
         - Add flex arrays to struct i915_syncmap
         - Allow for very slow HuC loading
         - DP tunneling and bandwidth allocation support
      
        msm:
         - Correct bindings for MSM8976 and SM8650 platforms
         - Start migration of MDP5 platforms to DPU driver
         - X1E80100 MDSS support
         - DPU:
            - Improve DSC allocation, fixing several important corner cases
            - Add support for SDM630/SDM660 platforms
            - Simplify dpu_encoder_phys_ops
            - Apply fixes targeting DSC support with a single DSC encoder
            - Apply fixes for HCTL_EN timing configuration
            - X1E80100 support
            - Add support for YUV420 over DP
         - GPU:
            - fix sc7180 UBWC config
            - fix a7xx LLC config
            - new gpu support: a305B, a750, a702
            - machine support: SM7150 (different power levels than other a618)
            - a7xx devcoredump support
      
        habanalabs:
         - configure IRQ affinity according to NUMA node
         - move HBM MMU page tables inside the HBM
         - improve device reset
         - check extended PCIe errors
      
        ivpu:
         - updates to firmware API
         - refactor BO allocation
      
        imx:
         - use devm_ functions during init
      
        hisilicon:
         - fix EDID includes
      
        mgag200:
         - improve ioremap usage
         - convert to struct drm_edid
         - Work around PCI write bursts
      
        nouveau:
         - disp: use kmemdup()
         - fix EDID includes
         - documentation fixes
      
        qaic:
         - fixes to BO handling
         - make use of DRM managed release
         - fix order of remove operations
      
        rockchip:
         - analogix_dp: get encoder port from DT
         - inno_hdmi: support HDMI for RK3128
         - lvds: error-handling fixes
      
        ssd130x:
         - support SSD133x plus DT bindings
      
        tegra:
         - fix error handling
      
        tilcdc:
         - make use of DRM managed release
      
        v3d:
         - show memory stats in debugfs
         - Support display MMU page size
      
        vc4:
         - fix error handling in plane prepare_fb
         - fix framebuffer test in plane helpers
      
        virtio:
         - add venus capset defines
      
        vkms:
         - fix OOB access when programming the LUT
         - Kconfig improvements
      
        vmwgfx:
         - unmap surface before changing plane state
         - fix memory leak in error handling
         - documentation fixes
         - list command SVGA_3D_CMD_DEFINE_GB_SURFACE_V4 as invalid
         - fix null-pointer deref in execbuf
         - refactor display-mode probing
         - fix fencing for creating cursor MOBs
         - fix cursor-memory lifetime
      
        xlnx:
         - fix live video input for ZynqMP DPSUB
      
        lima:
         - fix memory leak
      
        loongson:
         - fail if no VRAM present
      
        meson:
         - switch to new drm_bridge_read_edid() interface
      
        renesas:
         - add RZ/G2L DU support plus DT bindings
      
        mxsfb:
         - Use managed mode config
      
        sun4i:
         - HDMI: updates to atomic mode setting
      
        mediatek:
         - Add display driver for MT8188 VDOSYS1
         - DSI driver cleanups
         - Filter modes according to hardware capability
         - Fix a null pointer crash in mtk_drm_crtc_finish_page_flip
      
        etnaviv:
         - enhancements for NPU and MRT support"
      
      * tag 'drm-next-2024-03-13' of https://gitlab.freedesktop.org/drm/kernel: (1420 commits)
        drm/amd/display: Removed redundant @ symbol to fix kernel-doc warnings in -next repo
        drm/amd/pm: wait for completion of the EnableGfxImu message
        drm/amdgpu/soc21: add mode2 asic reset for SMU IP v14.0.1
        drm/amdgpu: add smu 14.0.1 support
        drm/amdgpu: add VPE 6.1.1 discovery support
        drm/amdgpu/vpe: add VPE 6.1.1 support
        drm/amdgpu/vpe: don't emit cond exec command under collaborate mode
        drm/amdgpu/vpe: add collaborate mode support for VPE
        drm/amdgpu/vpe: add PRED_EXE and COLLAB_SYNC OPCODE
        drm/amdgpu/vpe: add multi instance VPE support
        drm/amdgpu/discovery: add nbif v6_3_1 ip block
        drm/amdgpu: Add nbif v6_3_1 ip block support
        drm/amdgpu: Add pcie v6_1_0 ip headers (v5)
        drm/amdgpu: Add nbif v6_3_1 ip headers (v5)
        arch/powerpc: Remove <linux/fb.h> from backlight code
        macintosh/via-pmu-backlight: Include <linux/backlight.h>
        fbdev/chipsfb: Include <linux/backlight.h>
        drm/etnaviv: Restore some id values
        drm/amdkfd: make kfd_class constant
        drm/amdgpu: add ring timeout information in devcoredump
        ...
      480e035f
  5. 13 Mar, 2024 12 commits
    • Linus Torvalds's avatar
      Merge tag 'fs_for_v6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · e5e038b7
      Linus Torvalds authored
      Pull ext2, isofs, udf, and quota updates from Jan Kara:
       "A lot of material this time:
      
         - removal of a lot of GFP_NOFS usage from ext2, udf, quota (either it
           was legacy or replaced with scoped memalloc_nofs_*() API)
      
         - removal of BUG_ONs in quota code
      
         - conversion of UDF to the new mount API
      
         - tightening quota on disk format verification
      
         - fix some potentially unsafe use of RCU pointers in quota code and
           annotate everything properly to make sparse happy
      
         - a few other small quota, ext2, udf, and isofs fixes"
      
      * tag 'fs_for_v6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs: (26 commits)
        udf: remove SLAB_MEM_SPREAD flag usage
        quota: remove SLAB_MEM_SPREAD flag usage
        isofs: remove SLAB_MEM_SPREAD flag usage
        ext2: remove SLAB_MEM_SPREAD flag usage
        ext2: mark as deprecated
        udf: convert to new mount API
        udf: convert novrs to an option flag
        MAINTAINERS: add missing git address for ext2 entry
        quota: Detect loops in quota tree
        quota: Properly annotate i_dquot arrays with __rcu
        quota: Fix rcu annotations of inode dquot pointers
        isofs: handle CDs with bad root inode but good Joliet root directory
        udf: Avoid invalid LVID used on mount
        quota: Fix potential NULL pointer dereference
        quota: Drop GFP_NOFS instances under dquot->dq_lock and dqio_sem
        quota: Set nofs allocation context when acquiring dqio_sem
        ext2: Remove GFP_NOFS use in ext2_xattr_cache_insert()
        ext2: Drop GFP_NOFS use in ext2_get_blocks()
        ext2: Drop GFP_NOFS allocation from ext2_init_block_alloc_info()
        udf: Remove GFP_NOFS allocation in udf_expand_file_adinicb()
        ...
      e5e038b7
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 1715f710
      Linus Torvalds authored
      Pull fsnotify updates from Jan Kara:
      
       - fsnotify optimizations to reduce cost of fsnotify when nobody is
         watching
      
       - fix longstanding wart that system could not be suspended when some
         process was waiting for response to fanotify permission event
      
       - some spelling fixes
      
      * tag 'fsnotify_for_v6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fanotify: allow freeze when waiting response for permission events
        fanotify: Fix misspelling of "writable"
        fsnotify: Fix misspelling of "writable"
        inotify: Fix misspelling of "writable"
        fsnotify: Add fsnotify_sb_has_watchers() helper
        fsnotify: optimize the case of no parent watcher
      1715f710
    • Linus Torvalds's avatar
      Merge tag 'xfs-6.9-merge-8' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · babbcc02
      Linus Torvalds authored
      Pull xfs updates from Chandan Babu:
      
       - Online repair updates:
          - More ondisk structures being repaired:
              - Inode's mode field by trying to obtain file type value from
                the a directory entry
              - Quota counters
              - Link counts of inodes
              - FS summary counters
              - Support for in-memory btrees has been added to support repair
                of rmap btrees
          - Misc changes:
              - Report corruption of metadata to the health tracking subsystem
              - Enable indirect health reporting when resources are scarce
              - Reduce memory usage while repairing refcount btree
              - Extend "Bmap update" intent item to support atomic extent
                swapping on the realtime device
              - Extend "Bmap update" intent item to support extended attribute
                fork and unwritten extents
          - Code cleanups:
              - Bmap log intent
              - Btree block pointer checking
              - Btree readahead
              - Buffer target
              - Symbolic link code
      
       - Remove mrlock wrapper around the rwsem
      
       - Convert all the GFP_NOFS flag usages to use the scoped
         memalloc_nofs_save() API instead of direct calls with the GFP_NOFS
      
       - Refactor and simplify xfile abstraction. Lower level APIs in shmem.c
         are required to be exported in order to achieve this
      
       - Skip checking alignment constraints for inode chunk allocations when
         block size is larger than inode chunk size
      
       - Do not submit delwri buffers collected during log recovery when an
         error has been encountered
      
       - Fix SEEK_HOLE/DATA for file regions which have active COW extents
      
       - Fix lock order inversion when executing error handling path during
         shrinking a filesystem
      
       - Remove duplicate ifdefs
      
      * tag 'xfs-6.9-merge-8' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (183 commits)
        xfs: shrink failure needs to hold AGI buffer
        mm/shmem.c: Use new form of *@param in kernel-doc
        kernel-doc: Add unary operator * to $type_param_ref
        xfs: use kvfree() in xlog_cil_free_logvec()
        xfs: xfs_btree_bload_prep_block() should use __GFP_NOFAIL
        xfs: fix scrub stats file permissions
        xfs: fix log recovery erroring out on refcount recovery failure
        xfs: move symlink target write function to libxfs
        xfs: move remote symlink target read function to libxfs
        xfs: move xfs_symlink_remote.c declarations to xfs_symlink_remote.h
        xfs: xfs_bmap_finish_one should map unwritten extents properly
        xfs: support deferred bmap updates on the attr fork
        xfs: support recovering bmap intent items targetting realtime extents
        xfs: add a realtime flag to the bmap update log redo items
        xfs: add a xattr_entry helper
        xfs: fix xfs_bunmapi to allow unmapping of partial rt extents
        xfs: move xfs_bmap_defer_add to xfs_bmap_item.c
        xfs: reuse xfs_bmap_update_cancel_item
        xfs: add a bi_entry helper
        xfs: remove xfs_trans_set_bmap_flags
        ...
      babbcc02
    • Jiri Kosina's avatar
      Merge branch 'for-6.9/wacom' into for-linus · 0db18cd8
      Jiri Kosina authored
      - small cleanup of struct->wacom_wac usage (Tatsunosuke Tobita)
      0db18cd8
    • Jiri Kosina's avatar
      Merge branch 'for-6.9/unused-struct-removal' into for-linus · 8c9089ef
      Jiri Kosina authored
      - removal of unused data structures all over the place (Jiri Slaby)
      8c9089ef
    • Jiri Kosina's avatar
      Merge branch 'for-6.9/samsung' into for-linus · 58cd69cb
      Jiri Kosina authored
      - support for the following Bluetooth devices (Sandeep C S):
      
              Samsung wireless Keyboard
              Samsung wireless GamePad
              Samsung Wireless Action Mouse
              Samsung Wireless Book Cover
              Samsung Wireless Universal Keyboard
              Samsung Wireless HOGP Keyboard
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.com>
      58cd69cb
    • Jiri Kosina's avatar
      Merge branch 'for-6.9/nintendo' into for-linus · 1b99fb19
      Jiri Kosina authored
      - dead code removal in hid-nintendo (Jiapeng Chong)
      1b99fb19
    • Jiri Kosina's avatar
      Merge branch 'for-6.9/lenovo' into for-linus · 94596303
      Jiri Kosina authored
      - 2nd version of code for applying proper quirk depending on firmware version
        for lenovo/cptkbd (Mikhail Khvainitski)
      94596303
    • Jiri Kosina's avatar
      Merge branch 'for-6.9/amd-sfh' into for-linus · 2e21dee6
      Jiri Kosina authored
      - assorted fixes and optimizations for amd-sfh (Basavaraj Natikar)
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.com>
      2e21dee6
    • Linus Torvalds's avatar
      Merge tag '6.9-rc-smb3-client-fixes-part1' of git://git.samba.org/sfrench/cifs-2.6 · 279d44ce
      Linus Torvalds authored
      Pull smb client updates from Steve French:
      
       - fix for folios/netfs data corruption in cifs_extend_writeback
      
       - additional tracepoint added
      
       - updates for special files and symlinks: improvements to allow
         selecting use of either WSL or NFS reparse point format on creating
         special files
      
       - allocation size improvement for cached files
      
       - minor cleanup patches
      
       - fix to allow changing the password on remount when password for the
         session is expired.
      
       - lease key related fixes: caching hardlinked files, deletes of
         deferred close files, and an important fix to better reuse lease keys
         for compound operations, which also can avoid lease break timeouts
         when low on credits
      
       - fix potential data corruption with write/readdir races
      
       - compression cleanups and a fix for compression headers
      
      * tag '6.9-rc-smb3-client-fixes-part1' of git://git.samba.org/sfrench/cifs-2.6: (24 commits)
        cifs: update internal module version number for cifs.ko
        smb: common: simplify compression headers
        smb: common: fix fields sizes in compression_pattern_payload_v1
        smb: client: negotiate compression algorithms
        smb3: add dynamic trace point for ioctls
        cifs: Fix writeback data corruption
        smb: client: return reparse type in /proc/mounts
        smb: client: set correct d_type for reparse DFS/DFSR and mount point
        smb: client: parse uid, gid, mode and dev from WSL reparse points
        smb: client: introduce SMB2_OP_QUERY_WSL_EA
        smb: client: Fix a NULL vs IS_ERR() check in wsl_set_xattrs()
        smb: client: add support for WSL reparse points
        smb: client: reduce number of parameters in smb2_compound_op()
        smb: client: fix potential broken compound request
        smb: client: move most of reparse point handling code to common file
        smb: client: introduce reparse mount option
        smb: client: retry compound request without reusing lease
        smb: client: do not defer close open handles to deleted files
        smb: client: reuse file lease key in compound operations
        smb3: update allocation size more accurately on write completion
        ...
      279d44ce
    • Christian Brauner's avatar
      pidfs: remove config option · 9d9539db
      Christian Brauner authored
      As Linus suggested this enables pidfs unconditionally. A key property to
      retain is the ability to compare pidfds by inode number (cf. [1]).
      That's extremely helpful just as comparing namespace file descriptors by
      inode number is. They are used in a variety of scenarios where they need
      to be compared, e.g., when receiving a pidfd via SO_PEERPIDFD from a
      socket to trivially authenticate a the sender and various other
      use-cases.
      
      For 64bit systems this is pretty trivial to do. For 32bit it's slightly
      more annoying as we discussed but we simply add a dumb ida based
      allocator that gets used on 32bit. This gives the same guarantees about
      inode numbers on 64bit without any overflow risk. Practically, we'll
      never run into overflow issues because we're constrained by the number
      of processes that can exist on 32bit and by the number of open files
      that can exist on a 32bit system. On 64bit none of this matters and
      things are very simple.
      
      If 32bit also needs the uniqueness guarantee they can simply parse the
      contents of /proc/<pid>/fd/<nr>. The uniqueness guarantees have a
      variety of use-cases. One of the most obvious ones is that they will
      make pidfiles (or "pidfdfiles", I guess) reliable as the unique
      identifier can be placed into there that won't be reycled. Also a
      frequent request.
      
      Note, I took the chance and simplified path_from_stashed() even further.
      Instead of passing the inode number explicitly to path_from_stashed() we
      let the filesystem handle that internally. So path_from_stashed() ends
      up even simpler than it is now. This is also a good solution allowing
      the cleanup code to be clean and consistent between 32bit and 64bit. The
      cleanup path in prepare_anon_dentry() is also switched around so we put
      the inode before the dentry allocation. This means we only have to call
      the cleanup handler for the filesystem's inode data once and can rely
      ->evict_inode() otherwise.
      
      Aside from having to have a bit of extra code for 32bit it actually ends
      up a nice cleanup for path_from_stashed() imho.
      
      Tested on both 32 and 64bit including error injection.
      
      Link: https://github.com/systemd/systemd/pull/31713 [1]
      Link: https://lore.kernel.org/r/20240312-dingo-sehnlich-b3ecc35c6de7@braunerSigned-off-by: default avatarChristian Brauner <brauner@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      9d9539db
    • Linus Torvalds's avatar
      Merge tag 'modules-6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux · ce0c1c92
      Linus Torvalds authored
      Pull modules updates from Luis Chamberlain:
       "Christophe Leroy did most of the work on this release, first with a
        few cleanups on CONFIG_STRICT_KERNEL_RWX and ending with error
        handling for when set_memory_XX() can fail.
      
        This is part of a larger effort to clean up all these callers which
        can fail, modules is just part of it"
      
      * tag 'modules-6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux:
        module: Don't ignore errors from set_memory_XX()
        lib/test_kmod: fix kernel-doc warnings
        powerpc: Simplify strict_kernel_rwx_enabled()
        modules: Remove #ifdef CONFIG_STRICT_MODULE_RWX around rodata_enabled
        init: Declare rodata_enabled and mark_rodata_ro() at all time
        module: Change module_enable_{nx/x/ro}() to more explicit names
        module: Use set_memory_rox()
      ce0c1c92