1. 19 Jan, 2024 38 commits
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-6.8-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 9bc44c51
      Linus Torvalds authored
      Pull devicetree header detangling from Rob Herring:
       "Remove the circular including of of_device.h and of_platform.h along
        with all of their implicit includes.
      
        This is the culmination of several kernel cycles worth of fixing
        implicit DT includes throughout the tree"
      
      * tag 'devicetree-for-6.8-2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        of: Stop circularly including of_device.h and of_platform.h
        clk: qcom: gcc-x1e80100: Replace of_device.h with explicit includes
        thermal: loongson2: Replace of_device.h with explicit includes
        net: can: Use device_get_match_data()
        sparc: Use device_get_match_data()
      9bc44c51
    • Linus Torvalds's avatar
      Merge tag 'spi-fix-v6.8-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · a638bfbf
      Linus Torvalds authored
      Pull spi fix from Mark Brown:
       "One simple fix for the device unbind path in the Coldfire driver.
      
        A conversion to use a combined get/enable helper missed removing a
        disable"
      
      * tag 'spi-fix-v6.8-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: coldfire-qspi: Remove an erroneous clk_disable_unprepare() from the remove function
      a638bfbf
    • Linus Torvalds's avatar
      Merge tag 'sound-fix-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · a1fe5b6d
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "A collection of small fixes:
      
         - Lots of ASoC SOF fixes and related reworks
      
         - ASoC TAS codec fixes including DT updates
      
         - A few HD-audio quirks and regression fixes
      
         - Minor fixes for aloop, oxygen and scarlett2 mixer"
      
      * tag 'sound-fix-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (23 commits)
        ALSA: hda/realtek: Enable headset mic on Lenovo M70 Gen5
        ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on HP ZBook
        ALSA: hda/relatek: Enable Mute LED on HP Laptop 15s-fq2xxx
        ASoC: SOF: ipc4-loader: remove the CPC check warnings
        ASoC: SOF: ipc4-pcm: remove log message for LLP
        ALSA: hda: generic: Remove obsolete call to ledtrig_audio_get
        ALSA: scarlett2: Fix yet more -Wformat-truncation warnings
        ALSA: hda: Properly setup HDMI stream
        ASoC: audio-graph-card2: fix index check on graph_parse_node_multi_nm()
        ASoC: SOF: icp3-dtrace: Revert "Fix wrong kfree() usage"
        ALSA: oxygen: Fix right channel of capture volume mixer
        ALSA: aloop: Introduce a function to get if access is interleaved mode
        ASoC: mediatek: sof-common: Add NULL check for normal_link string
        ASoC: mediatek: mt8195: Remove afe-dai component and rework codec link
        ASoC: mediatek: mt8192: Check existence of dai_name before dereferencing
        ASoC: Intel: bxt_rt298: Fix kernel ops due to COMP_DUMMY change
        ASoC: Intel: bxt_da7219_max98357a: Fix kernel ops due to COMP_DUMMY change
        ASoC: codecs: rtq9128: Fix TDM enable and DAI format control flow
        ASoC: codecs: rtq9128: Fix PM_RUNTIME usage
        ASoC: tas2781: Add tas2563 into driver
        ...
      a1fe5b6d
    • Linus Torvalds's avatar
      Merge tag 'drm-next-2024-01-19' of git://anongit.freedesktop.org/drm/drm · e08b5758
      Linus Torvalds authored
      Pull more drm fixes from Dave Airlie:
       "This is mostly amdgpu and xe fixes, with an amdkfd and nouveau fix
        thrown in.
      
        The amdgpu ones are just the usual couple of weeks of fixes. The xe
        ones are bunch of cleanups for the new xe driver, the fix you put in
        on the merge commit and the kconfig fix that was hiding the problem
        from me.
      
        amdgpu:
         - DSC fixes
         - DC resource pool fixes
         - OTG fix
         - DML2 fixes
         - Aux fix
         - GFX10 RLC firmware handling fix
         - Revert a broken workaround for SMU 13.0.2
         - DC writeback fix
         - Enable gfxoff when ROCm apps are active on gfx11 with the proper FW
           version
      
        amdkfd:
         - Fix dma-buf exports using GEM handles
      
        nouveau:
         - fix a unneeded WARN_ON triggering
      
        xe:
         - Fix for definition of wakeref_t
         - Fix for an error code aliasing
         - Fix for VM_UNBIND_ALL in the case there are no bound VMAs
         - Fixes for a number of __iomem address space mismatches reported by
           sparse
         - Fixes for the assignment of exec_queue priority
         - A Fix for skip_guc_pc not taking effect
         - Workaround for a build problem on GCC 11
         - A couple of fixes for error paths
         - Fix a Flat CCS compression metadata copy issue
         - Fix a misplace array bounds checking
         - Don't have display support depend on EXPERT (as discussed on IRC)"
      
      * tag 'drm-next-2024-01-19' of git://anongit.freedesktop.org/drm/drm: (71 commits)
        nouveau/vmm: don't set addr on the fail path to avoid warning
        drm/amdgpu: Enable GFXOFF for Compute on GFX11
        drm/amd/display: Drop 'acrtc' and add 'new_crtc_state' NULL check for writeback requests.
        drm/amdgpu: revert "Adjust removal control flow for smu v13_0_2"
        drm/amdkfd: init drm_client with funcs hook
        drm/amd/display: Fix a switch statement in populate_dml_output_cfg_from_stream_state()
        drm/amdgpu: Fix the null pointer when load rlc firmware
        drm/amd/display: Align the returned error code with legacy DP
        drm/amd/display: Fix DML2 watermark calculation
        drm/amd/display: Clear OPTC mem select on disable
        drm/amd/display: Port DENTIST hang and TDR fixes to OTG disable W/A
        drm/amd/display: Add logging resource checks
        drm/amd/display: Init link enc resources in dc_state only if res_pool presents
        drm/amd/display: Fix late derefrence 'dsc' check in 'link_set_dsc_pps_packet()'
        drm/amd/display: Avoid enum conversion warning
        drm/amd/pm: Fix smuv13.0.6 current clock reporting
        drm/amd/pm: Add error log for smu v13.0.6 reset
        drm/amdkfd: Fix 'node' NULL check in 'svm_range_get_range_boundaries()'
        drm/amdgpu: drop exp hw support check for GC 9.4.3
        drm/amdgpu: move debug options init prior to amdgpu device init
        ...
      e08b5758
    • Linus Torvalds's avatar
      Merge tag 'for-v6.8-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · ab1e2d0f
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "New features:
         - bq24190: Add support for BQ24296 charger
      
        Cleanups:
         - all reset drivers: Stop using module_platform_driver_probe()
         - gpio-restart: use devm_register_sys_off_handler
         - pwr-mlxbf: support graceful reboot
         - cw2015: correct time_to_empty units
         - qcom-battmgr: Fix driver initialization sequence
         - bq27xxx: Start/Stop delayed work in suspend/resume
         - minor cleanups and fixes"
      
      * tag 'for-v6.8-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (33 commits)
        power: supply: bq24190_charger: Fix "initializer element is not constant" error
        power: supply: bq24190_charger: Add support for BQ24296
        dt-bindings: power: supply: bq24190: Add BQ24296 compatible
        dt-bindings: power: reset: xilinx: Rename node names in examples
        power: supply: qcom_battmgr: Register the power supplies after PDR is up
        dt-bindings: power: reset: qcom-pon: fix inconsistent example
        power: supply: Fix null pointer dereference in smb2_probe
        power: reset: at91: Drop '__init' from at91_wakeup_status()
        power: supply: Use multiple MODULE_AUTHOR statements
        power: supply: Fix indentation and some other warnings
        power: reset: gpio-restart: Use devm_register_sys_off_handler()
        power: supply: bq256xx: fix some problem in bq256xx_hw_init
        power: supply: cw2015: correct time_to_empty units in sysfs
        power: reset: at91-sama5d2_shdwc: Convert to platform remove callback returning void
        power: reset: at91-reset: Convert to platform remove callback returning void
        power: reset: tps65086-restart: Convert to platform remove callback returning void
        power: reset: syscon-poweroff: Convert to platform remove callback returning void
        power: reset: rmobile-reset: Convert to platform remove callback returning void
        power: reset: restart-poweroff: Convert to platform remove callback returning void
        power: reset: regulator-poweroff: Convert to platform remove callback returning void
        ...
      ab1e2d0f
    • Linus Torvalds's avatar
      Merge tag 'apparmor-pr-2024-01-18' of... · 237c31cb
      Linus Torvalds authored
      Merge tag 'apparmor-pr-2024-01-18' of git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor
      
      Pull AppArmor updates from John Johansen:
       "This adds a single feature, switch the hash used to check policy from
        sha1 to sha256
      
        There are fixes for two memory leaks, and refcount bug and a potential
        crash when a profile name is empty. Along with a couple minor code
        cleanups.
      
        Summary:
      
        Features
         - switch policy hash from sha1 to sha256
      
        Bug Fixes
         - Fix refcount leak in task_kill
         - Fix leak of pdb objects and trans_table
         - avoid crash when parse profie name is empty
      
        Cleanups
         - add static to stack_msg and nulldfa
         - more kernel-doc cleanups"
      
      * tag 'apparmor-pr-2024-01-18' of git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor:
        apparmor: Fix memory leak in unpack_profile()
        apparmor: avoid crash when parsed profile name is empty
        apparmor: fix possible memory leak in unpack_trans_table
        apparmor: free the allocated pdb objects
        apparmor: Fix ref count leak in task_kill
        apparmor: cleanup network hook comments
        apparmor: add missing params to aa_may_ptrace kernel-doc comments
        apparmor: declare nulldfa as static
        apparmor: declare stack_msg as static
        apparmor: switch SECURITY_APPARMOR_HASH from sha1 to sha256
      237c31cb
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-6.8-rc1' of https://github.com/ceph/ceph-client · 556e2d17
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "Assorted CephFS fixes and cleanups with nothing standing out"
      
      * tag 'ceph-for-6.8-rc1' of https://github.com/ceph/ceph-client:
        ceph: get rid of passing callbacks in __dentry_leases_walk()
        ceph: d_obtain_{alias,root}(ERR_PTR(...)) will do the right thing
        ceph: fix invalid pointer access if get_quota_realm return ERR_PTR
        ceph: remove duplicated code in ceph_netfs_issue_read()
        ceph: send oldest_client_tid when renewing caps
        ceph: rename create_session_open_msg() to create_session_full_msg()
        ceph: select FS_ENCRYPTION_ALGS if FS_ENCRYPTION
        ceph: fix deadlock or deadcode of misusing dget()
        ceph: try to allocate a smaller extent map for sparse read
        libceph: remove MAX_EXTENTS check for sparse reads
        ceph: reinitialize mds feature bit even when session in open
        ceph: skip reconnecting if MDS is not ready
      556e2d17
    • Linus Torvalds's avatar
      Merge tag 'xfs-6.8-merge-4' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · ec2d264a
      Linus Torvalds authored
      Pull xfs fix from Chandan Babu:
      
       - Fix per-inode space accounting bug
      
      * tag 'xfs-6.8-merge-4' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: fix backwards logic in xfs_bmap_alloc_account
      ec2d264a
    • Linus Torvalds's avatar
      Merge tag '6.8-rc-smb-server-fixes-part2' of git://git.samba.org/ksmbd · 8cb1bb17
      Linus Torvalds authored
      Pull more smb server updates from Steve French:
      
       - Fix for incorrect oplock break on directories when leases disabled
      
       - UAF fix for race between create and destroy of tcp connection
      
       - Important session setup SPNEGO fix
      
       - Update ksmbd feature status summary
      
      * tag '6.8-rc-smb-server-fixes-part2' of git://git.samba.org/ksmbd:
        ksmbd: only v2 leases handle the directory
        ksmbd: fix UAF issue in ksmbd_tcp_new_connection()
        ksmbd: validate mech token in session setup
        ksmbd: update feature status in documentation
      8cb1bb17
    • Linus Torvalds's avatar
      Merge tag 'vfs-6.8.netfs' of gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs · 16df6e07
      Linus Torvalds authored
      Pull netfs updates from Christian Brauner:
       "This extends the netfs helper library that network filesystems can use
        to replace their own implementations. Both afs and 9p are ported. cifs
        is ready as well but the patches are way bigger and will be routed
        separately once this is merged. That will remove lots of code as well.
      
        The overal goal is to get high-level I/O and knowledge of the page
        cache and ouf of the filesystem drivers. This includes knowledge about
        the existence of pages and folios
      
        The pull request converts afs and 9p. This removes about 800 lines of
        code from afs and 300 from 9p. For 9p it is now possible to do writes
        in larger than a page chunks. Additionally, multipage folio support
        can be turned on for 9p. Separate patches exist for cifs removing
        another 2000+ lines. I've included detailed information in the
        individual pulls I took.
      
        Summary:
      
         - Add NFS-style (and Ceph-style) locking around DIO vs buffered I/O
           calls to prevent these from happening at the same time.
      
         - Support for direct and unbuffered I/O.
      
         - Support for write-through caching in the page cache.
      
         - O_*SYNC and RWF_*SYNC writes use write-through rather than writing
           to the page cache and then flushing afterwards.
      
         - Support for write-streaming.
      
         - Support for write grouping.
      
         - Skip reads for which the server could only return zeros or EOF.
      
         - The fscache module is now part of the netfs library and the
           corresponding maintainer entry is updated.
      
         - Some helpers from the fscache subsystem are renamed to mark them as
           belonging to the netfs library.
      
         - Follow-up fixes for the netfs library.
      
         - Follow-up fixes for the 9p conversion"
      
      * tag 'vfs-6.8.netfs' of gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs: (50 commits)
        netfs: Fix wrong #ifdef hiding wait
        cachefiles: Fix signed/unsigned mixup
        netfs: Fix the loop that unmarks folios after writing to the cache
        netfs: Fix interaction between write-streaming and cachefiles culling
        netfs: Count DIO writes
        netfs: Mark netfs_unbuffered_write_iter_locked() static
        netfs: Fix proc/fs/fscache symlink to point to "netfs" not "../netfs"
        netfs: Rearrange netfs_io_subrequest to put request pointer first
        9p: Use length of data written to the server in preference to error
        9p: Do a couple of cleanups
        9p: Fix initialisation of netfs_inode for 9p
        cachefiles: Fix __cachefiles_prepare_write()
        9p: Use netfslib read/write_iter
        afs: Use the netfs write helpers
        netfs: Export the netfs_sreq tracepoint
        netfs: Optimise away reads above the point at which there can be no data
        netfs: Implement a write-through caching option
        netfs: Provide a launder_folio implementation
        netfs: Provide a writepages implementation
        netfs, cachefiles: Pass upper bound length to allow expansion
        ...
      16df6e07
    • Rob Herring's avatar
      of: Stop circularly including of_device.h and of_platform.h · ef175b29
      Rob Herring authored
      The DT of_device.h and of_platform.h headers date back to the separate
      of_platform_bus_type before it was merged into the regular platform bus.
      As part of that merge prepping Arm DT support 13 years ago, they
      "temporarily" include each other. The headers also include
      platform_device.h and of.h. The result was lots of drivers relied on
      these implicit includes.
      
      Now the entire tree has been fixed over the last couple of cycles to
      explicitly include the necessary headers instead of relying on
      of_device.h and/or of_platform.h implicit includes, so the implicit and
      circular includes can finally be removed.
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      ef175b29
    • Stephen Rothwell's avatar
      clk: qcom: gcc-x1e80100: Replace of_device.h with explicit includes · 527eb67e
      Stephen Rothwell authored
      The DT of_device.h and of_platform.h date back to the separate
      of_platform_bus_type before it as merged into the regular platform bus.
      As part of that merge prepping Arm DT support 13 years ago, they
      "temporarily" include each other. They also include platform_device.h
      and of.h.
      
      of_device.h isn't needed, but mod_devicetable.h and platform_device.h
      were implicitly included.
      Signed-off-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Reviewed-by: default avatarSibi Sankar <quic_sibis@quicinc.com>
      Link: https://lore.kernel.org/r/20231211160510.0aef871b@canb.auug.org.au
      [robh: Redo commit msg]
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      527eb67e
    • Rob Herring's avatar
      thermal: loongson2: Replace of_device.h with explicit includes · ed7dafcc
      Rob Herring authored
      The DT of_device.h and of_platform.h date back to the separate
      of_platform_bus_type before it as merged into the regular platform bus.
      As part of that merge prepping Arm DT support 13 years ago, they
      "temporarily" include each other. They also include platform_device.h
      and of.h.
      
      of_device.h isn't needed, but mod_devicetable.h and property.h were
      implicitly included.
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      ed7dafcc
    • Rob Herring's avatar
      net: can: Use device_get_match_data() · 5e6c3454
      Rob Herring authored
      Use preferred device_get_match_data() instead of of_match_device() to
      get the driver match data. With this, adjust the includes to explicitly
      include the correct headers.
      
      Error checking for matching and match data was not necessary as matching
      is always successful if we're already in probe and the match tables always
      have data pointers.
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      5e6c3454
    • Rob Herring's avatar
      sparc: Use device_get_match_data() · 61c2ef4b
      Rob Herring authored
      Use preferred device_get_match_data() instead of of_match_device() to
      get the driver match data. With this, adjust the includes to explicitly
      include the correct headers.
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      61c2ef4b
    • Dave Airlie's avatar
      Merge tag 'drm-xe-next-fixes-2024-01-16' of... · 009f0a64
      Dave Airlie authored
      Merge tag 'drm-xe-next-fixes-2024-01-16' of https://gitlab.freedesktop.org/drm/xe/kernel into drm-next
      
      Driver Changes:
      - Fix for definition of wakeref_t
      - Fix for an error code aliasing
      - Fix for VM_UNBIND_ALL in the case there are no bound VMAs
      - Fixes for a number of __iomem address space mismatches reported by sparse
      - Fixes for the assignment of exec_queue priority
      - A Fix for skip_guc_pc not taking effect
      - Workaround for a build problem on GCC 11
      - A couple of fixes for error paths
      - Fix a Flat CCS compression metadata copy issue
      - Fix a misplace array bounds checking
      - Don't have display support depend on EXPERT (as discussed on IRC)
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= <thomas.hellstrom@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240116102204.106520-1-thomas.hellstrom@linux.intel.com
      009f0a64
    • Dave Airlie's avatar
      nouveau/vmm: don't set addr on the fail path to avoid warning · cacea813
      Dave Airlie authored
      nvif_vmm_put gets called if addr is set, but if the allocation
      fails we don't need to call put, otherwise we get a warning like
      
      [523232.435671] ------------[ cut here ]------------
      [523232.435674] WARNING: CPU: 8 PID: 1505697 at drivers/gpu/drm/nouveau/nvif/vmm.c:68 nvif_vmm_put+0x72/0x80 [nouveau]
      [523232.435795] Modules linked in: uinput rfcomm snd_seq_dummy snd_hrtimer nf_conntrack_netbios_ns nf_conntrack_broadcast nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject nft_ct nft_chain_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 ip_set nf_tables nfnetlink qrtr bnep sunrpc binfmt_misc intel_rapl_msr intel_rapl_common intel_uncore_frequency intel_uncore_frequency_common isst_if_common iwlmvm nfit libnvdimm vfat fat x86_pkg_temp_thermal intel_powerclamp mac80211 snd_soc_avs snd_soc_hda_codec coretemp snd_hda_ext_core snd_soc_core snd_hda_codec_realtek kvm_intel snd_hda_codec_hdmi snd_compress snd_hda_codec_generic ac97_bus snd_pcm_dmaengine snd_hda_intel libarc4 snd_intel_dspcfg snd_intel_sdw_acpi snd_hda_codec kvm iwlwifi snd_hda_core btusb snd_hwdep btrtl snd_seq btintel irqbypass btbcm rapl snd_seq_device eeepc_wmi btmtk intel_cstate iTCO_wdt cfg80211 snd_pcm asus_wmi bluetooth intel_pmc_bxt iTCO_vendor_support snd_timer ledtrig_audio pktcdvd snd mei_me
      [523232.435828]  sparse_keymap intel_uncore i2c_i801 platform_profile wmi_bmof mei pcspkr ioatdma soundcore i2c_smbus rfkill idma64 dca joydev acpi_tad loop zram nouveau drm_ttm_helper ttm video drm_exec drm_gpuvm gpu_sched crct10dif_pclmul i2c_algo_bit nvme crc32_pclmul crc32c_intel drm_display_helper polyval_clmulni nvme_core polyval_generic e1000e mxm_wmi cec ghash_clmulni_intel r8169 sha512_ssse3 nvme_common wmi pinctrl_sunrisepoint uas usb_storage ip6_tables ip_tables fuse
      [523232.435849] CPU: 8 PID: 1505697 Comm: gnome-shell Tainted: G        W          6.6.0-rc7-nvk-uapi+ #12
      [523232.435851] Hardware name: System manufacturer System Product Name/ROG STRIX X299-E GAMING II, BIOS 1301 09/24/2021
      [523232.435852] RIP: 0010:nvif_vmm_put+0x72/0x80 [nouveau]
      [523232.435934] Code: 00 00 48 89 e2 be 02 00 00 00 48 c7 04 24 00 00 00 00 48 89 44 24 08 e8 fc bf ff ff 85
      c0 75 0a 48 c7 43 08 00 00 00 00 eb b3 <0f> 0b eb f2 e8 f5 c9 b2 e6 0f 1f 44 00 00 90 90 90 90 90 90 90 90
      [523232.435936] RSP: 0018:ffffc900077ffbd8 EFLAGS: 00010282
      [523232.435937] RAX: 00000000fffffffe RBX: ffffc900077ffc00 RCX: 0000000000000010
      [523232.435938] RDX: 0000000000000010 RSI: ffffc900077ffb38 RDI: ffffc900077ffbd8
      [523232.435940] RBP: ffff888e1c4f2140 R08: 0000000000000000 R09: 0000000000000000
      [523232.435940] R10: 0000000000000000 R11: 0000000000000000 R12: ffff888503811800
      [523232.435941] R13: ffffc900077ffca0 R14: ffff888e1c4f2140 R15: ffff88810317e1e0
      [523232.435942] FS:  00007f933a769640(0000) GS:ffff88905fa00000(0000) knlGS:0000000000000000
      [523232.435943] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [523232.435944] CR2: 00007f930bef7000 CR3: 00000005d0322001 CR4: 00000000003706e0
      [523232.435945] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      [523232.435946] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
      [523232.435964] Call Trace:
      [523232.435965]  <TASK>
      [523232.435966]  ? nvif_vmm_put+0x72/0x80 [nouveau]
      [523232.436051]  ? __warn+0x81/0x130
      [523232.436055]  ? nvif_vmm_put+0x72/0x80 [nouveau]
      [523232.436138]  ? report_bug+0x171/0x1a0
      [523232.436142]  ? handle_bug+0x3c/0x80
      [523232.436144]  ? exc_invalid_op+0x17/0x70
      [523232.436145]  ? asm_exc_invalid_op+0x1a/0x20
      [523232.436149]  ? nvif_vmm_put+0x72/0x80 [nouveau]
      [523232.436230]  ? nvif_vmm_put+0x64/0x80 [nouveau]
      [523232.436342]  nouveau_vma_del+0x80/0xd0 [nouveau]
      [523232.436506]  nouveau_vma_new+0x1a0/0x210 [nouveau]
      [523232.436671]  nouveau_gem_object_open+0x1d0/0x1f0 [nouveau]
      [523232.436835]  drm_gem_handle_create_tail+0xd1/0x180
      [523232.436840]  drm_prime_fd_to_handle_ioctl+0x12e/0x200
      [523232.436844]  ? __pfx_drm_prime_fd_to_handle_ioctl+0x10/0x10
      [523232.436847]  drm_ioctl_kernel+0xd3/0x180
      [523232.436849]  drm_ioctl+0x26d/0x4b0
      [523232.436851]  ? __pfx_drm_prime_fd_to_handle_ioctl+0x10/0x10
      [523232.436855]  nouveau_drm_ioctl+0x5a/0xb0 [nouveau]
      [523232.437032]  __x64_sys_ioctl+0x94/0xd0
      [523232.437036]  do_syscall_64+0x5d/0x90
      [523232.437040]  ? syscall_exit_to_user_mode+0x2b/0x40
      [523232.437044]  ? do_syscall_64+0x6c/0x90
      [523232.437046]  entry_SYSCALL_64_after_hwframe+0x6e/0xd8
      Reported-by: default avatarFaith Ekstrand <faith.ekstrand@collabora.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240117213852.295565-1-airlied@gmail.com
      cacea813
    • Linus Torvalds's avatar
      Merge tag 'for-6.8/block-2024-01-18' of git://git.kernel.dk/linux · 9d1694dc
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
      
       - NVMe pull request via Keith:
            - tcp, fc, and rdma target fixes (Maurizio, Daniel, Hannes,
              Christoph)
            - discard fixes and improvements (Christoph)
            - timeout debug improvements (Keith, Max)
            - various cleanups (Daniel, Max, Giuxen)
            - trace event string fixes (Arnd)
            - shadow doorbell setup on reset fix (William)
            - a write zeroes quirk for SK Hynix (Jim)
      
       - MD pull request via Song:
            - Sparse warning since v6.0 (Bart)
            - /proc/mdstat regression since v6.7 (Yu Kuai)
      
       - Use symbolic error value (Christian)
      
       - IO Priority documentation update (Christian)
      
       - Fix for accessing queue limits without having entered the queue
         (Christoph, me)
      
       - Fix for loop dio support (Christoph)
      
       - Move null_blk off deprecated ida interface (Christophe)
      
       - Ensure nbd initializes full msghdr (Eric)
      
       - Fix for a regression with the folio conversion, which is now easier
         to hit because of an unrelated change (Matthew)
      
       - Remove redundant check in virtio-blk (Li)
      
       - Fix for a potential hang in sbitmap (Ming)
      
       - Fix for partial zone appending (Damien)
      
       - Misc changes and fixes (Bart, me, Kemeng, Dmitry)
      
      * tag 'for-6.8/block-2024-01-18' of git://git.kernel.dk/linux: (45 commits)
        Documentation: block: ioprio: Update schedulers
        loop: fix the the direct I/O support check when used on top of block devices
        blk-mq: Remove the hctx 'run' debugfs attribute
        nbd: always initialize struct msghdr completely
        block: Fix iterating over an empty bio with bio_for_each_folio_all
        block: bio-integrity: fix kcalloc() arguments order
        virtio_blk: remove duplicate check if queue is broken in virtblk_done
        sbitmap: remove stale comment in sbq_calc_wake_batch
        block: Correct a documentation comment in blk-cgroup.c
        null_blk: Remove usage of the deprecated ida_simple_xx() API
        block: ensure we hold a queue reference when using queue limits
        blk-mq: rename blk_mq_can_use_cached_rq
        block: print symbolic error name instead of error code
        blk-mq: fix IO hang from sbitmap wakeup race
        nvmet-rdma: avoid circular locking dependency on install_queue()
        nvmet-tcp: avoid circular locking dependency on install_queue()
        nvme-pci: set doorbell config before unquiescing
        block: fix partial zone append completion handling in req_bio_endio()
        block/iocost: silence warning on 'last_period' potentially being unused
        md/raid1: Use blk_opf_t for read and write operations
        ...
      9d1694dc
    • Linus Torvalds's avatar
      Merge tag 'for-6.8/io_uring-2024-01-18' of git://git.kernel.dk/linux · e9a5a78d
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
       "Nothing major in here, just a few fixes and cleanups that arrived
        after the initial merge window pull request got finalized, as well as
        a fix for a patch that got merged earlier"
      
      * tag 'for-6.8/io_uring-2024-01-18' of git://git.kernel.dk/linux:
        io_uring: combine cq_wait_nr checks
        io_uring: clean *local_work_add var naming
        io_uring: clean up local tw add-wait sync
        io_uring: adjust defer tw counting
        io_uring/register: guard compat syscall with CONFIG_COMPAT
        io_uring/rsrc: improve code generation for fixed file assignment
        io_uring/rw: cleanup io_rw_done()
      e9a5a78d
    • Linus Torvalds's avatar
      Merge tag 'erofs-for-6.8-rc1-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs · 6f362500
      Linus Torvalds authored
      Pull erofs fixes from Gao Xiang:
      
       - Fix a "BUG: kernel NULL pointer dereference" issue due to
         inconsistent on-disk indices of compressed inodes against
         per-sb `available_compr_algs` generated by Syzkaller
      
       - Don't use certain unnecessary folio_*() helpers if the folio
         type (page cache) is known
      
      * tag 'erofs-for-6.8-rc1-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:
        erofs: Don't use certain unnecessary folio_*() functions
        erofs: fix inconsistent per-file compression format
      6f362500
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · b5f66ba2
      Linus Torvalds authored
      Pull Kbuild updates from Masahiro Yamada:
      
       - Make Kconfig parse the input .config more precisely
      
       - Support W=c and W=e options for Kconfig
      
       - Set Kconfig int/hex symbols to zero if the 'default' property is
         missing
      
       - Add .editorconfig
      
       - Add scripts/git.orderFile
      
       - Add a script to detect backward-incompatible changes in UAPI headers
      
       - Resolve the symlink passed to O= option properly
      
       - Use the user-supplied mtime for all files in the builtin initramfs,
         which provides better reproducible builds
      
       - Fix the direct execution of debian/rules for Debian package builds
      
       - Use build ID instead of the .gnu_debuglink section for the Debian dbg
         package
      
      * tag 'kbuild-v6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (53 commits)
        kbuild: deb-pkg: use debian/<package> for tmpdir
        kbuild: deb-pkg: move 'make headers' to build-arch
        kbuild: deb-pkg: do not search for 'scripts' directory under arch/
        kbuild: deb-pkg: use build ID instead of debug link for dbg package
        kbuild: deb-pkg: use more debhelper commands in builddeb
        kbuild: deb-pkg: remove unneeded '-f $srctree/Makefile' in debian/rules
        kbuild: deb-pkg: allow to run debian/rules from output directory
        kbuild: deb-pkg: set DEB_* variables if debian/rules is directly executed
        kbuild: deb-pkg: squash scripts/package/deb-build-option to debian/rules
        kbuild: deb-pkg: factor out common Make options in debian/rules
        kbuild: deb-pkg: hard-code Build-Depends
        kbuild: deb-pkg: split debian/copyright from the mkdebian script
        gen_init_cpio: Apply mtime supplied by user to all file types
        kbuild: resolve symlinks for O= properly
        docs: dev-tools: Add UAPI checker documentation
        check-uapi: Introduce check-uapi.sh
        scripts: Introduce a default git.orderFile
        kconfig: WERROR unmet symbol dependency
        Add .editorconfig file for basic formatting
        kconfig: Use KCONFIG_CONFIG instead of .config
        ...
      b5f66ba2
    • Linus Torvalds's avatar
      Merge tag 'kgdb-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux · 2a668d21
      Linus Torvalds authored
      Pull kgdb update from Daniel Thompson:
       "The entire changeset for kgdb this cycle is a single two-line change
        to remove some deadcode that, had it not been dead, would have called
        strncpy() in an unsafe manner.
      
        To be fair there were other modest clean ups were discussed this cycle
        but they are not finalized and will have to wait until next time"
      
      * tag 'kgdb-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux:
        kdb: Fix a potential buffer overflow in kdb_local()
      2a668d21
    • Linus Torvalds's avatar
      Merge tag 'net-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 736b5545
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Including fixes from bpf and netfilter.
      
        Previous releases - regressions:
      
         - Revert "net: rtnetlink: Enslave device before bringing it up",
           breaks the case inverse to the one it was trying to fix
      
         - net: dsa: fix oob access in DSA's netdevice event handler
           dereference netdev_priv() before check its a DSA port
      
         - sched: track device in tcf_block_get/put_ext() only for clsact
           binder types
      
         - net: tls, fix WARNING in __sk_msg_free when record becomes full
           during splice and MORE hint set
      
         - sfp-bus: fix SFP mode detect from bitrate
      
         - drv: stmmac: prevent DSA tags from breaking COE
      
        Previous releases - always broken:
      
         - bpf: fix no forward progress in in bpf_iter_udp if output buffer is
           too small
      
         - bpf: reject variable offset alu on registers with a type of
           PTR_TO_FLOW_KEYS to prevent oob access
      
         - netfilter: tighten input validation
      
         - net: add more sanity check in virtio_net_hdr_to_skb()
      
         - rxrpc: fix use of Don't Fragment flag on RESPONSE packets, avoid
           infinite loop
      
         - amt: do not use the portion of skb->cb area which may get clobbered
      
         - mptcp: improve validation of the MPTCPOPT_MP_JOIN MCTCP option
      
        Misc:
      
         - spring cleanup of inactive maintainers"
      
      * tag 'net-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (88 commits)
        i40e: Include types.h to some headers
        ipv6: mcast: fix data-race in ipv6_mc_down / mld_ifc_work
        selftests: mlxsw: qos_pfc: Adjust the test to support 8 lanes
        selftests: mlxsw: qos_pfc: Remove wrong description
        mlxsw: spectrum_router: Register netdevice notifier before nexthop
        mlxsw: spectrum_acl_tcam: Fix stack corruption
        mlxsw: spectrum_acl_tcam: Fix NULL pointer dereference in error path
        mlxsw: spectrum_acl_erp: Fix error flow of pool allocation failure
        ethtool: netlink: Add missing ethnl_ops_begin/complete
        selftests: bonding: Add more missing config options
        selftests: netdevsim: add a config file
        libbpf: warn on unexpected __arg_ctx type when rewriting BTF
        selftests/bpf: add tests confirming type logic in kernel for __arg_ctx
        bpf: enforce types for __arg_ctx-tagged arguments in global subprogs
        bpf: extract bpf_ctx_convert_map logic and make it more reusable
        libbpf: feature-detect arg:ctx tag support in kernel
        ipvs: avoid stat macros calls from preemptible context
        netfilter: nf_tables: reject NFT_SET_CONCAT with not field length description
        netfilter: nf_tables: skip dead set elements in netlink dump
        netfilter: nf_tables: do not allow mismatch field size and set key length
        ...
      736b5545
    • Linus Torvalds's avatar
      Merge tag 'i2c-for-6.8-rc1-rebased' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · ed8d8453
      Linus Torvalds authored
      Pull i2c updates from Wolfram Sang:
       "This removes the currently unused CLASS_DDC support (controllers set
        the flag, but there is no client to use it).
      
        Also, CLASS_SPD support gets simplified to prepare removal in the
        future. Class based instantiation is not recommended these days
        anyhow.
      
        Furthermore, I2C core now creates a debugfs directory per I2C adapter.
        Current bus driver users were converted to use it.
      
        Finally, quite some driver updates. Standing out are patches for the
        wmt-driver which is refactored to support more variants.
      
        This is the rebased pull request where a large series for the
        designware driver was dropped"
      
      * tag 'i2c-for-6.8-rc1-rebased' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (38 commits)
        MAINTAINERS: use proper email for my I2C work
        i2c: stm32f7: add support for stm32mp25 soc
        i2c: stm32f7: perform I2C_ISR read once at beginning of event isr
        dt-bindings: i2c: document st,stm32mp25-i2c compatible
        i2c: stm32f7: simplify status messages in case of errors
        i2c: stm32f7: perform most of irq job in threaded handler
        i2c: stm32f7: use dev_err_probe upon calls of devm_request_irq
        i2c: i801: Add lis3lv02d for Dell XPS 15 7590
        i2c: i801: Add lis3lv02d for Dell Precision 3540
        i2c: wmt: Reduce redundant: REG_CR setting
        i2c: wmt: Reduce redundant: function parameter
        i2c: wmt: Reduce redundant: clock mode setting
        i2c: wmt: Reduce redundant: wait event complete
        i2c: wmt: Reduce redundant: bus busy check
        i2c: mux: reg: Remove class-based device auto-detection support
        i2c: make i2c_bus_type const
        dt-bindings: at24: add ROHM BR24G04
        eeprom: at24: use of_match_ptr()
        i2c: cpm: Remove linux,i2c-index conversion from be32
        i2c: imx: Make SDA actually optional for bus recovering
        ...
      ed8d8453
    • Linus Torvalds's avatar
      Merge tag 'rtc-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux · 378de6df
      Linus Torvalds authored
      Pull RTC updates from Alexandre Belloni:
       "There are three new drivers this cycle. Also the cmos driver is
        getting fixes for longstanding wakeup issues on AMD.
      
        New drivers:
         - Analog Devices MAX31335
         - Nuvoton ma35d1
         - Texas Instrument TPS6594 PMIC RTC
      
        Drivers:
         - cmos: use ACPI alarm instead of HPET on recent AMD platforms
         - nuvoton: add NCT3015Y-R and NCT3018Y-R support
         - rv8803: proper suspend/resume and wakeup-source support"
      
      * tag 'rtc-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (26 commits)
        rtc: nuvoton: Compatible with NCT3015Y-R and NCT3018Y-R
        rtc: da9063: Use dev_err_probe()
        rtc: da9063: Use device_get_match_data()
        rtc: da9063: Make IRQ as optional
        rtc: max31335: Fix comparison in max31335_volatile_reg()
        rtc: max31335: use regmap_update_bits_check
        rtc: max31335: remove unecessary locking
        rtc: max31335: add driver support
        dt-bindings: rtc: max31335: add max31335 bindings
        rtc: rv8803: add wakeup-source support
        rtc: ac100: remove misuses of kernel-doc
        rtc: class: Remove usage of the deprecated ida_simple_xx() API
        rtc: MAINTAINERS: drop Alessandro Zummo
        rtc: ma35d1: remove hardcoded UIE support
        dt-bindings: rtc: qcom-pm8xxx: fix inconsistent example
        rtc: rv8803: Add power management support
        rtc: ds3232: avoid unused-const-variable warning
        rtc: lpc24xx: add missing dependency
        rtc: tps6594: Add driver for TPS6594 RTC
        rtc: Add driver for Nuvoton ma35d1 rtc controller
        ...
      378de6df
    • Linus Torvalds's avatar
      Merge tag 'input-for-v6.8-rc0' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 0f289bdd
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - a new driver for Adafruit Seesaw gamepad device
      
       - Zforce touchscreen will handle standard device properties for axis
         swap/inversion
      
       - handling of advanced sensitivity settings in Microchip CAP11xx
         capacitive sensor driver
      
       - more drivers have been converted to use newer gpiod API
      
       - support for dedicated wakeup IRQs in gpio-keys dirver
      
       - support for slider gestures and OTP variants in iqs269a driver
      
       - atkbd will report keyboard version as 0xab83 in cases when GET ID
         command was skipped (to deal with problematic firmware on newer
         laptops), restoring the previous behavior
      
       - other assorted cleanups and changes
      
      * tag 'input-for-v6.8-rc0' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (44 commits)
        Input: atkbd - use ab83 as id when skipping the getid command
        Input: driver for Adafruit Seesaw Gamepad
        dt-bindings: input: bindings for Adafruit Seesaw Gamepad
        Input: da9063_onkey - avoid explicitly setting input's parent
        Input: da9063_onkey - avoid using OF-specific APIs
        Input: iqs269a - add support for OTP variants
        dt-bindings: input: iqs269a: Add bindings for OTP variants
        Input: iqs269a - add support for slider gestures
        dt-bindings: input: iqs269a: Add bindings for slider gestures
        Input: gpio-keys - filter gpio_keys -EPROBE_DEFER error messages
        Input: zforce_ts - accept standard touchscreen properties
        dt-bindings: touchscreen: neonode,zforce: Use standard properties
        dt-bindings: touchscreen: convert neonode,zforce to json-schema
        dt-bindings: input: convert drv266x to json-schema
        Input: da9063 - use dev_err_probe()
        Input: da9063 - drop redundant prints in probe()
        Input: da9063 - simplify obtaining OF match data
        Input: as5011 - convert to GPIO descriptor
        Input: omap-keypad - drop optional GPIO support
        Input: tca6416-keypad - drop unused include
        ...
      0f289bdd
    • Linus Torvalds's avatar
      Merge tag 'phy-for-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy · 33a9caa4
      Linus Torvalds authored
      Pull phy updates from Vinod Koul:
       "New Support:
      
         - Qualcomm SM8650 UFS, PCIe and USB/DP Combo PHY, eUSB2 PHY, SDX75
           USB3, X1E80100 USB3 support
      
         - Mediatek MT8195 support
      
         - Rockchip RK3128 usb2 support
      
         - TI SGMII mode for J784S4
      
        Updates:
      
         - Qualcomm v7 register offsets updates
      
         - Mediatek tphy support for force phy mode switch"
      
      * tag 'phy-for-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy: (34 commits)
        phy: ti: j721e-wiz: Add SGMII support in WIZ driver for J784S4
        phy: ti: gmii-sel: Enable SGMII mode for J784S4
        phy: qcom-qmp-usb: Add Qualcomm X1E80100 USB3 PHY support
        dt-bindings: phy: qcom,sc8280xp-qmp-usb3-uni: Add X1E80100 USB PHY binding
        phy: qcom-qmp-combo: Add x1e80100 USB/DP combo phys
        dt-bindings: phy: qcom,sc8280xp-qmp-usb43dp-phy: Document X1E80100 compatible
        dt-bindings: phy: qcom: snps-eusb2: Document the X1E80100 compatible
        phy: mediatek: tphy: add support force phy mode switch
        dt-bindings: phy: mediatek: tphy: add a property for force-mode switch
        phy: phy-can-transceiver: insert space after include
        phy: qualcomm: phy-qcom-qmp-ufs: Rectify SM8550 UFS HS-G4 PHY Settings
        dt-bindings: phy: qcom,sc8280xp-qmp-usb43dp-phy: fix path to header
        phy: renesas: phy-rcar-gen2: use select for GENERIC_PHY
        phy: qcom-qmp: qserdes-txrx: Add v7 register offsets
        phy: qcom-qmp: qserdes-txrx: Add V6 N4 register offsets
        phy: qcom-qmp: qserdes-com: Add v7 register offsets
        phy: qcom-qmp: pcs-usb: Add v7 register offsets
        phy: qcom-qmp: pcs: Add v7 register offsets
        phy: qcom-qmp: qserdes-txrx: Add some more v6.20 register offsets
        phy: qcom-qmp: qserdes-com: Add some more v6 register offsets
        ...
      33a9caa4
    • Linus Torvalds's avatar
      Merge tag 'soundwire-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire · 4d5d604c
      Linus Torvalds authored
      Pull soundwire updates from Vinod Koul:
      
       - Core: add concept of controller_id to deal with clear Controller /
         Manager hierarchy
      
       - bunch of qcom driver refactoring for qcom_swrm_stream_alloc_ports(),
         qcom_swrm_stream_alloc_ports() and setting controller id to hw master
         id
      
      * tag 'soundwire-6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire:
        soundwire: amd: drop bus freq calculation and set 'max_clk_freq'
        soundwire: generic_bandwidth_allocation use bus->params.max_dr_freq
        soundwire: qcom: set controller id to hw master id
        soundwire: fix initializing sysfs for same devices on different buses
        soundwire: bus: introduce controller_id
        soundwire: stream: constify sdw_port_config when adding devices
        soundwire: qcom: move sconfig in qcom_swrm_stream_alloc_ports() out of critical section
        soundwire: qcom: drop unneeded qcom_swrm_stream_alloc_ports() cleanup
      4d5d604c
    • Linus Torvalds's avatar
      Merge tag 'gpio-fixes-for-v6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux · 34551358
      Linus Torvalds authored
      Pull gpio fixes from Bartosz Golaszewski:
       "Apart from some regular driver fixes there's a relatively big revert
        of the locking changes that were introduced to GPIOLIB in this merge
        window.
      
        This is because it turned out that some legacy GPIO interfaces - that
        need to translate a number from the global GPIO numberspace to the
        address of the relevant descriptor, thus running a GPIO device lookup
        and taking the GPIO device list lock - are still used in old code from
        atomic context resulting in "scheduling while atomic" errors.
      
        I'll try to make the read-only part of the list access entirely
        lockless using SRCU but this will take some time so let's go back to
        the old global spinlock for now.
      
        Summary:
      
         - revert the changes aiming to use a read-write semaphore to protect
           the list of GPIO devices due to calls to legacy API taking that
           lock from atomic context in old code
      
         - fix inverted logic in DEFINE_FREE() for GPIO device references
      
         - check the return value of bgpio_init() in gpio-mlxbf3
      
         - fix node address in the DT bindings example for gpio-xilinx
      
         - fix signedness bug in gpio-rtd
      
         - fix kernel-doc warnings in gpio-en7523"
      
      * tag 'gpio-fixes-for-v6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
        gpiolib: revert the attempt to protect the GPIO device list with an rwsem
        gpio: EN7523: fix kernel-doc warnings
        gpiolib: Fix scope-based gpio_device refcounting
        gpio: mlxbf3: add an error code check in mlxbf3_gpio_probe
        dt-bindings: gpio: xilinx: Fix node address in gpio
        gpio: rtd: Fix signedness bug in probe
      34551358
    • Linus Torvalds's avatar
      Merge tag 'pwm/for-6.8-2' of gitolite.kernel.org:pub/scm/linux/kernel/git/ukleinek/linux · 5c935069
      Linus Torvalds authored
      Pull pwm fixes from Uwe Kleine-König:
      
       - fix a duplicate cleanup in an error path introduced in
         this merge window
      
       - fix an out-of-bounds access
      
         In practise it doesn't happen - otherwise someone would have noticed
         since v5.17-rc1 I guess - because the device tree binding for the two
         drivers using of_pwm_single_xlate() only have args->args_count == 1.
      
         A device-tree that doesn't conform to the respective bindings could
         trigger that easily however.
      
       - correct the request callback of the jz4740 pwm driver which used
         dev_err_probe() long after .probe() completed.
      
         This is conceptually wrong because dev_err_probe() might call
         device_set_deferred_probe_reason() which is nonsensical after the
         driver is bound.
      
      * tag 'pwm/for-6.8-2' of gitolite.kernel.org:pub/scm/linux/kernel/git/ukleinek/linux:
        pwm: jz4740: Don't use dev_err_probe() in .request()
        pwm: Fix out-of-bounds access in of_pwm_single_xlate()
        pwm: bcm2835: Remove duplicate call to clk_rate_exclusive_put()
      5c935069
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 21c91bb9
      Linus Torvalds authored
      Pull backlight updates from Lee Jones:
       "New Drivers:
         - Add support for Monolithic Power Systems MP3309C WLED Step-up Converter
      
        Fix-ups:
         - Use/convert to new/better APIs/helpers/MACROs instead of
           hand-rolling implementations
         - Device Tree Binding updates
         - Demote non-kerneldoc header comments
         - Improve error handling; return proper error values, simplify, avoid
           duplicates, etc
         - Convert over to the new (kinda) GPIOD API
      
        Bug Fixes:
         - Fix uninitialised local variable"
      
      * tag 'backlight-next-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight: hx8357: Convert to agnostic GPIO API
        backlight: ili922x: Add an error code check in ili922x_write()
        backlight: ili922x: Drop kernel-doc for local macros
        backlight: mp3309c: Fix uninitialized local variable
        backlight: pwm_bl: Use dev_err_probe
        backlight: mp3309c: Add support for MPS MP3309C
        dt-bindings: backlight: mp3309c: Remove two required properties
      21c91bb9
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-6.8-2024-01-18' of git://git.infradead.org/users/hch/dma-mapping · 17e232b6
      Linus Torvalds authored
      Pull dma-mapping fixes from Christoph Hellwig:
      
       - fix kerneldoc warnings (Randy Dunlap)
      
       - better bounds checking in swiotlb (ZhangPeng)
      
      * tag 'dma-mapping-6.8-2024-01-18' of git://git.infradead.org/users/hch/dma-mapping:
        dma-debug: fix kernel-doc warnings
        swiotlb: check alloc_size before the allocation of a new memory pool
      17e232b6
    • Linus Torvalds's avatar
      Merge tag 'memblock-v6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock · 77c9622d
      Linus Torvalds authored
      Pull memblock update from Mike Rapoport:
       "Code readability improvement.
      
        Use NUMA_NO_NODE instead of -1 as return value of
        memblock_search_pfn_nid() to improve code readability
        and consistency with the callers of that function"
      
      * tag 'memblock-v6.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock:
        memblock: Return NUMA_NO_NODE instead of -1 to improve code readability
      77c9622d
    • Linus Torvalds's avatar
      Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost · 0b7359cc
      Linus Torvalds authored
      Pull virtio updates from Michael Tsirkin:
      
       - vdpa/mlx5: support for resumable vqs
      
       - virtio_scsi: mq_poll support
      
       - 3virtio_pmem: support SHMEM_REGION
      
       - virtio_balloon: stay awake while adjusting balloon
      
       - virtio: support for no-reset virtio PCI PM
      
       - Fixes, cleanups
      
      * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        vdpa/mlx5: Add mkey leak detection
        vdpa/mlx5: Introduce reference counting to mrs
        vdpa/mlx5: Use vq suspend/resume during .set_map
        vdpa/mlx5: Mark vq state for modification in hw vq
        vdpa/mlx5: Mark vq addrs for modification in hw vq
        vdpa/mlx5: Introduce per vq and device resume
        vdpa/mlx5: Allow modifying multiple vq fields in one modify command
        vdpa/mlx5: Expose resumable vq capability
        vdpa: Block vq property changes in DRIVER_OK
        vdpa: Track device suspended state
        scsi: virtio_scsi: Add mq_poll support
        virtio_pmem: support feature SHMEM_REGION
        virtio_balloon: stay awake while adjusting balloon
        vdpa: Remove usage of the deprecated ida_simple_xx() API
        virtio: Add support for no-reset virtio PCI PM
        virtio_net: fix missing dma unmap for resize
        vhost-vdpa: account iommu allocations
        vdpa: Fix an error handling path in eni_vdpa_probe()
      0b7359cc
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v6.8-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · da3c45c7
      Linus Torvalds authored
      Pull hwmonfix from Guenter Roeck:
       "Fix crash seen when instantiating npcm750-pwm-fan"
      
      * tag 'hwmon-for-v6.8-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (npcm750-pwm-fan) Fix crash observed when instantiating nuvoton,npcm750-pwm-fan
      da3c45c7
    • Linus Torvalds's avatar
      Merge tag 'cxl-for-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl · db5ccb9e
      Linus Torvalds authored
      Pull CXL (Compute Express Link) updates from Dan Williams:
       "The bulk of this update is support for enumerating the performance
        capabilities of CXL memory targets and connecting that to a platform
        CXL memory QoS class. Some follow-on work remains to hook up this data
        into core-mm policy, but that is saved for v6.9.
      
        The next significant update is unifying how CXL event records (things
        like background scrub errors) are processed between so called
        "firmware first" and native error record retrieval. The CXL driver
        handler that processes the record retrieved from the device mailbox is
        now the handler for that same record format coming from an EFI/ACPI
        notification source.
      
        This also contains miscellaneous feature updates, like Get Timestamp,
        and other fixups.
      
        Summary:
      
         - Add support for parsing the Coherent Device Attribute Table (CDAT)
      
         - Add support for calculating a platform CXL QoS class from CDAT data
      
         - Unify the tracing of EFI CXL Events with native CXL Events.
      
         - Add Get Timestamp support
      
         - Miscellaneous cleanups and fixups"
      
      * tag 'cxl-for-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl: (41 commits)
        cxl/core: use sysfs_emit() for attr's _show()
        cxl/pci: Register for and process CPER events
        PCI: Introduce cleanup helpers for device reference counts and locks
        acpi/ghes: Process CXL Component Events
        cxl/events: Create a CXL event union
        cxl/events: Separate UUID from event structures
        cxl/events: Remove passing a UUID to known event traces
        cxl/events: Create common event UUID defines
        cxl/events: Promote CXL event structures to a core header
        cxl: Refactor to use __free() for cxl_root allocation in cxl_endpoint_port_probe()
        cxl: Refactor to use __free() for cxl_root allocation in cxl_find_nvdimm_bridge()
        cxl: Fix device reference leak in cxl_port_perf_data_calculate()
        cxl: Convert find_cxl_root() to return a 'struct cxl_root *'
        cxl: Introduce put_cxl_root() helper
        cxl/port: Fix missing target list lock
        cxl/port: Fix decoder initialization when nr_targets > interleave_ways
        cxl/region: fix x9 interleave typo
        cxl/trace: Pass UUID explicitly to event traces
        cxl/region: use %pap format to print resource_size_t
        cxl/region: Add dev_dbg() detail on failure to allocate HPA space
        ...
      db5ccb9e
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-6.8-2024-01-18' of... · 0a1123c7
      Dave Airlie authored
      Merge tag 'amd-drm-fixes-6.8-2024-01-18' of https://gitlab.freedesktop.org/agd5f/linux into drm-next
      
      amd-drm-fixes-6.8-2024-01-18:
      
      amdgpu:
      - DSC fixes
      - DC resource pool fixes
      - OTG fix
      - DML2 fixes
      - Aux fix
      - GFX10 RLC firmware handling fix
      - Revert a broken workaround for SMU 13.0.2
      - DC writeback fix
      - Enable gfxoff when ROCm apps are active on gfx11 with the proper FW version
      
      amdkfd:
      - Fix dma-buf exports using GEM handles
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20240118223127.4904-1-alexander.deucher@amd.com
      0a1123c7
    • Nathan Chancellor's avatar
      power: supply: bq24190_charger: Fix "initializer element is not constant" error · 17d49b7e
      Nathan Chancellor authored
      When building with a version of GCC prior to 8.x, there is an error
      around non-constant initializer elements:
      
        drivers/power/supply/bq24190_charger.c:1978:16: error: initializer element is not constant
           .vbus_desc = bq24190_vbus_desc,
                        ^~~~~~~~~~~~~~~~~
        drivers/power/supply/bq24190_charger.c:1978:16: note: (near initialization for 'bq24190_chip_info_tbl[0].vbus_desc')
        drivers/power/supply/bq24190_charger.c:1989:16: error: initializer element is not constant
           .vbus_desc = bq24190_vbus_desc,
                        ^~~~~~~~~~~~~~~~~
        drivers/power/supply/bq24190_charger.c:1989:16: note: (near initialization for 'bq24190_chip_info_tbl[1].vbus_desc')
        drivers/power/supply/bq24190_charger.c:2000:16: error: initializer element is not constant
           .vbus_desc = bq24190_vbus_desc,
                        ^~~~~~~~~~~~~~~~~
        drivers/power/supply/bq24190_charger.c:2000:16: note: (near initialization for 'bq24190_chip_info_tbl[2].vbus_desc')
        drivers/power/supply/bq24190_charger.c:2011:16: error: initializer element is not constant
           .vbus_desc = bq24190_vbus_desc,
                        ^~~~~~~~~~~~~~~~~
        drivers/power/supply/bq24190_charger.c:2011:16: note: (near initialization for 'bq24190_chip_info_tbl[3].vbus_desc')
        drivers/power/supply/bq24190_charger.c:2022:16: error: initializer element is not constant
           .vbus_desc = bq24296_vbus_desc,
                        ^~~~~~~~~~~~~~~~~
        drivers/power/supply/bq24190_charger.c:2022:16: note: (near initialization for 'bq24190_chip_info_tbl[4].vbus_desc')
      
      Clang versions prior to 17.x show a similar error:
      
        drivers/power/supply/bq24190_charger.c:1978:16: error: initializer element is not a compile-time constant
                        .vbus_desc = bq24190_vbus_desc,
                                     ^~~~~~~~~~~~~~~~~
        1 error generated.
      
      Newer compilers have decided to accept these structures as compile time
      constants as an extension. To resolve this issue for all supported
      compilers, change the vbus_desc member in 'struct bq24190_chip_info' to
      a pointer, as it is only ever passed by reference anyways, and adjust
      the assignments accordingly.
      
      Closes: https://github.com/ClangBuiltLinux/linux/issues/1973
      Fixes: b150a703 ("power: supply: bq24190_charger: Add support for BQ24296")
      Signed-off-by: default avatarNathan Chancellor <nathan@kernel.org>
      Reviewed-by: default avatarJustin Stitt <justinstitt@google.com>
      Link: https://lore.kernel.org/r/20240103-fix-bq24190_charger-vbus_desc-non-const-v1-1-115ddf798c70@kernel.orgSigned-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
      17d49b7e
  2. 18 Jan, 2024 2 commits
    • Linus Torvalds's avatar
      Merge tag 'vfio-v6.8-rc1' of https://github.com/awilliam/linux-vfio · 244aefb1
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
      
       - Add debugfs support, initially used for reporting device migration
         state (Longfang Liu)
      
       - Fixes and support for migration dirty tracking across multiple IOVA
         regions in the pds-vfio-pci driver (Brett Creeley)
      
       - Improved IOMMU allocation accounting visibility (Pasha Tatashin)
      
       - Virtio infrastructure and a new virtio-vfio-pci variant driver, which
         provides emulation of a legacy virtio interfaces on modern virtio
         hardware for virtio-net VF devices where the PF driver exposes
         support for legacy admin queues, ie. an emulated IO BAR on an SR-IOV
         VF to provide driver ABI compatibility to legacy devices (Yishai
         Hadas & Feng Liu)
      
       - Migration fixes for the hisi-acc-vfio-pci variant driver (Shameer
         Kolothum)
      
       - Kconfig dependency fix for new virtio-vfio-pci variant driver (Arnd
         Bergmann)
      
      * tag 'vfio-v6.8-rc1' of https://github.com/awilliam/linux-vfio: (22 commits)
        vfio/virtio: fix virtio-pci dependency
        hisi_acc_vfio_pci: Update migration data pointer correctly on saving/resume
        vfio/virtio: Declare virtiovf_pci_aer_reset_done() static
        vfio/virtio: Introduce a vfio driver over virtio devices
        vfio/pci: Expose vfio_pci_core_iowrite/read##size()
        vfio/pci: Expose vfio_pci_core_setup_barmap()
        virtio-pci: Introduce APIs to execute legacy IO admin commands
        virtio-pci: Initialize the supported admin commands
        virtio-pci: Introduce admin commands
        virtio-pci: Introduce admin command sending function
        virtio-pci: Introduce admin virtqueue
        virtio: Define feature bit for administration virtqueue
        vfio/type1: account iommu allocations
        vfio/pds: Add multi-region support
        vfio/pds: Move seq/ack bitmaps into region struct
        vfio/pds: Pass region info to relevant functions
        vfio/pds: Move and rename region specific info
        vfio/pds: Only use a single SGL for both seq and ack
        vfio/pds: Fix calculations in pds_vfio_dirty_sync
        MAINTAINERS: Add vfio debugfs interface doc link
        ...
      244aefb1
    • Linus Torvalds's avatar
      Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd · 86c4d58a
      Linus Torvalds authored
      Pull iommufd updates from Jason Gunthorpe:
       "This brings the first of three planned user IO page table invalidation
        operations:
      
         - IOMMU_HWPT_INVALIDATE allows invalidating the IOTLB integrated into
           the iommu itself. The Intel implementation will also generate an
           ATC invalidation to flush the device IOTLB as it unambiguously
           knows the device, but other HW will not.
      
        It goes along with the prior PR to implement userspace IO page tables
        (aka nested translation for VMs) to allow Intel to have full
        functionality for simple cases. An Intel implementation of the
        operation is provided.
      
        Also fix a small bug in the selftest mock iommu driver probe"
      
      * tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd:
        iommufd/selftest: Check the bus type during probe
        iommu/vt-d: Add iotlb flush for nested domain
        iommufd: Add data structure for Intel VT-d stage-1 cache invalidation
        iommufd/selftest: Add coverage for IOMMU_HWPT_INVALIDATE ioctl
        iommufd/selftest: Add IOMMU_TEST_OP_MD_CHECK_IOTLB test op
        iommufd/selftest: Add mock_domain_cache_invalidate_user support
        iommu: Add iommu_copy_struct_from_user_array helper
        iommufd: Add IOMMU_HWPT_INVALIDATE
        iommu: Add cache_invalidate_user op
      86c4d58a