1. 09 12月, 2022 2 次提交
  2. 22 11月, 2022 3 次提交
    • A
      HID: usbhid: Add ALWAYS_POLL quirk for some mice · f6d910a8
      Ankit Patel 提交于
      Some additional USB mouse devices are needing ALWAYS_POLL quirk without
      which they disconnect and reconnect every 60s.
      
      Add below devices to the known quirk list.
      CHERRY    VID 0x046a, PID 0x000c
      MICROSOFT VID 0x045e, PID 0x0783
      PRIMAX    VID 0x0461, PID 0x4e2a
      Signed-off-by: NAnkit Patel <anpatel@nvidia.com>
      Signed-off-by: NHaotien Hsu <haotienh@nvidia.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      f6d910a8
    • Z
      HID: core: fix shift-out-of-bounds in hid_report_raw_event · ec61b419
      ZhangPeng 提交于
      Syzbot reported shift-out-of-bounds in hid_report_raw_event.
      
      microsoft 0003:045E:07DA.0001: hid_field_extract() called with n (128) >
      32! (swapper/0)
      ======================================================================
      UBSAN: shift-out-of-bounds in drivers/hid/hid-core.c:1323:20
      shift exponent 127 is too large for 32-bit type 'int'
      CPU: 0 PID: 0 Comm: swapper/0 Not tainted
      6.1.0-rc4-syzkaller-00159-g4bbf3422 #0
      Hardware name: Google Compute Engine/Google Compute Engine, BIOS
      Google 10/26/2022
      Call Trace:
       <IRQ>
       __dump_stack lib/dump_stack.c:88 [inline]
       dump_stack_lvl+0x1e3/0x2cb lib/dump_stack.c:106
       ubsan_epilogue lib/ubsan.c:151 [inline]
       __ubsan_handle_shift_out_of_bounds+0x3a6/0x420 lib/ubsan.c:322
       snto32 drivers/hid/hid-core.c:1323 [inline]
       hid_input_fetch_field drivers/hid/hid-core.c:1572 [inline]
       hid_process_report drivers/hid/hid-core.c:1665 [inline]
       hid_report_raw_event+0xd56/0x18b0 drivers/hid/hid-core.c:1998
       hid_input_report+0x408/0x4f0 drivers/hid/hid-core.c:2066
       hid_irq_in+0x459/0x690 drivers/hid/usbhid/hid-core.c:284
       __usb_hcd_giveback_urb+0x369/0x530 drivers/usb/core/hcd.c:1671
       dummy_timer+0x86b/0x3110 drivers/usb/gadget/udc/dummy_hcd.c:1988
       call_timer_fn+0xf5/0x210 kernel/time/timer.c:1474
       expire_timers kernel/time/timer.c:1519 [inline]
       __run_timers+0x76a/0x980 kernel/time/timer.c:1790
       run_timer_softirq+0x63/0xf0 kernel/time/timer.c:1803
       __do_softirq+0x277/0x75b kernel/softirq.c:571
       __irq_exit_rcu+0xec/0x170 kernel/softirq.c:650
       irq_exit_rcu+0x5/0x20 kernel/softirq.c:662
       sysvec_apic_timer_interrupt+0x91/0xb0 arch/x86/kernel/apic/apic.c:1107
      ======================================================================
      
      If the size of the integer (unsigned n) is bigger than 32 in snto32(),
      shift exponent will be too large for 32-bit type 'int', resulting in a
      shift-out-of-bounds bug.
      Fix this by adding a check on the size of the integer (unsigned n) in
      snto32(). To add support for n greater than 32 bits, set n to 32, if n
      is greater than 32.
      
      Reported-by: syzbot+8b1641d2f14732407e23@syzkaller.appspotmail.com
      Fixes: dde5845a ("[PATCH] Generic HID layer - code split")
      Signed-off-by: NZhangPeng <zhangpeng362@huawei.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      ec61b419
    • J
      HID: uclogic: Add HID_QUIRK_HIDINPUT_FORCE quirk · 3405a4be
      José Expósito 提交于
      Commit f7d8e387 ("HID: uclogic: Switch to Digitizer usage for
      styluses") changed the usage used in UCLogic from "Pen" to "Digitizer".
      
      However, the IS_INPUT_APPLICATION() macro evaluates to false for
      HID_DG_DIGITIZER causing issues with the XP-Pen Star G640 tablet.
      
      Add the HID_QUIRK_HIDINPUT_FORCE quirk to bypass the
      IS_INPUT_APPLICATION() check.
      Reported-by: NTorge Matthies <openglfreak@googlemail.com>
      Reported-by: NAlexander Zhang <alex@alexyzhang.dev>
      Tested-by: NAlexander Zhang <alex@alexyzhang.dev>
      Signed-off-by: NJosé Expósito <jose.exposito89@gmail.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      3405a4be
  3. 15 11月, 2022 3 次提交
  4. 14 11月, 2022 1 次提交
  5. 04 11月, 2022 1 次提交
  6. 02 11月, 2022 2 次提交
  7. 18 10月, 2022 2 次提交
  8. 14 10月, 2022 4 次提交
  9. 08 10月, 2022 6 次提交
    • L
      Merge tag 'for-linus-2022100501' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · 79d11de9
      Linus Torvalds 提交于
      Pull HID updates from Benjamin Tissoires:
      
       - handle of all Logitech Bluetooth HID++ devices in the Logitech HID++
         drivers (Bastien Nocera)
      
       - fix broken atomic checks in hid-multitouch by adding memory barriers
         (Andri Yngvason)
      
       - better handling of devices with AMD SFH1.1 (Basavaraj Natikar)
      
       - better support of Nintendo clone controllers (Icenowy Zheng and
         Johnothan King)
      
       - Support for various RC controllers (Marcus Folkesson)
      
       - Add UGEEv2 support in hid-uclogic (XP-PEN Deco Pro S and Parblo A610
         PRO) (José Expósito)
      
       - some conversions to use dev_groups (Greg Kroah-Hartman)
      
       - HID-BPF preparatory patches, mostly to convert blank defines as enums
         (Benjamin Tissoires)
      
      * tag 'for-linus-2022100501' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (38 commits)
        HID: wacom: add three styli to wacom_intuos_get_tool_type
        HID: amd_sfh: Handle condition of "no sensors" for SFH1.1
        HID: amd_sfh: Change dev_err to dev_dbg for additional debug info
        HID: nintendo: check analog user calibration for plausibility
        HID: nintendo: deregister home LED when it fails
        HID: roccat: Fix use-after-free in roccat_read()
        hid: topre: Add driver fixing report descriptor
        HID: multitouch: Add memory barriers
        HID: convert defines of HID class requests into a proper enum
        HID: export hid_report_type to uapi
        HID: core: store the unique system identifier in hid_device
        HID: Add driver for PhoenixRC Flight Controller
        HID: Add driver for VRC-2 Car Controller
        HID: sony: Fix double word in comments
        hid: hid-logitech-hidpp: avoid unnecessary assignments in hidpp_connect_event
        HID: logitech-hidpp: Detect hi-res scrolling support
        HID: logitech-hidpp: Remove hard-coded "Sw. Id." for HID++ 2.0 commands
        HID: logitech-hidpp: Fix "Sw. Id." for HID++ 2.0 commands
        HID: logitech-hidpp: Remove special-casing of Bluetooth devices
        HID: logitech-hidpp: Enable HID++ for all the Logitech Bluetooth devices
        ...
      79d11de9
    • L
      Merge tag 'media/v6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 5d435a3f
      Linus Torvalds 提交于
      Pull media updates from Mauro Carvalho Chehab:
      
       - New driver for Mediatek MDP V3
      
       - New driver for NXP i.MX DW100 dewarper
      
       - Zoran driver got promoted from staging
      
       - Hantro and related drivers got promoted from staging
      
       - Several VB1 drivers got moved to staging/deprecated (cpia2, fsl-viu,
         meye, saa7146, av7110, stkwebcam, tm6000, vpfe_capture, davinci,
         zr364xx)
      
       - Usual set of driver fixes, improvements and cleanups
      
      * tag 'media/v6.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (107 commits)
        media: destage Hantro VPU driver
        media: platform: mtk-mdp3: add MediaTek MDP3 driver
        media: dt-binding: mediatek: add bindings for MediaTek CCORR and WDMA
        media: dt-binding: mediatek: add bindings for MediaTek MDP3 components
        media: xilinx: vipp: Fix refcount leak in xvip_graph_dma_init
        media: xilinx: video: Add 1X12 greyscale format
        media: xilinx: csi2rxss: Add 1X12 greyscale format
        media: staging: media: imx: imx7-media-csi: Increase video mem limit
        media: uvcvideo: Limit power line control for Sonix Technology
        media: uvcvideo: Use entity get_cur in uvc_ctrl_set
        media: uvcvideo: Fix typo 'the the' in comment
        media: uvcvideo: Use indexed loops in uvc_ctrl_init_ctrl()
        media: uvcvideo: Fix memory leak in uvc_gpio_parse
        media: renesas: vsp1: Add support for RZ/G2L VSPD
        media: renesas: vsp1: Add VSP1_HAS_NON_ZERO_LBA feature bit
        media: renesas: vsp1: Add support for VSP software version
        media: renesas: vsp1: Add support to deassert/assert reset line
        media: dt-bindings: media: renesas,vsp1: Document RZ/G2L VSPD bindings
        media: meson: vdec: add missing clk_disable_unprepare on error in vdec_hevc_start()
        media: amphion: fix a bug that vpu core may not resume after suspend
        ...
      5d435a3f
    • L
      Merge tag 'ata-6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata · 4078aa68
      Linus Torvalds 提交于
      Pull ata updates from Damien Le Moal:
      
       - Print the timeout value for internal command failures due to a
         timeout (from Tomas)
      
       - Improve parameter names in ata_dev_set_feature() to clarify this
         function use (from Niklas)
      
       - Improve the ahci driver low power mode setting initialization to
         allow more flexibility for the user (from Rafael)
      
       - Several patches to remove redundant variables in libata-core,
         libata-eh and the pata_macio driver and to fix typos in comments
         (from Jinpeng, Shaomin, Ye)
      
       - Some code simplifications and macro renaming (for clarity) in various
         functions of libata-core (from me)
      
       - Add a missing check for a potential failure of sata_scr_read() in
         sata_print_link_status() (from Li)
      
       - Cleanup of libata Kconfig PATA_PLATFORM and PATA_OF_PLATFORM options
         (from Lukas)
      
       - Cleanups of ata dt-bindings and improvements of libahci_platform,
         ahci and libahci code (from Serge)
      
       - New driver for Synopsys AHCI SATA controllers, based of the generic
         ahci code (from Serge). One compilation warning fix is added for this
         driver (from me)
      
       - Several fixes to macros used to discover a drive capabilities to be
         consistent with the ACS specifications (from Niklas)
      
       - A couple of simplifcations to some libata functions, removing
         unnecessary arguments (from Niklas)
      
       - An improvements to libata-eh code to avoid unnecessary link reset
         when revalidating a drive after a failed command. In practice, this
         extra, unneeded reset, reset does not cause any arm beyond slightly
         slowing down error recovery (from Niklas)
      
      * tag 'ata-6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata: (45 commits)
        ata: libata-eh: avoid needless hard reset when revalidating link
        ata: libata: drop superfluous ata_eh_analyze_tf() parameter
        ata: libata: drop superfluous ata_eh_request_sense() parameter
        ata: fix ata_id_has_dipm()
        ata: fix ata_id_has_ncq_autosense()
        ata: fix ata_id_has_devslp()
        ata: fix ata_id_sense_reporting_enabled() and ata_id_has_sense_reporting()
        ata: libata-eh: Remove the unneeded result variable
        ata: ahci_st: Enable compile test
        ata: ahci_st: Fix compilation warning
        MAINTAINERS: Add maintainers for DWC AHCI SATA driver
        ata: ahci-dwc: Add Baikal-T1 AHCI SATA interface support
        ata: ahci-dwc: Add platform-specific quirks support
        dt-bindings: ata: ahci: Add Baikal-T1 AHCI SATA controller DT schema
        ata: ahci: Add DWC AHCI SATA controller support
        ata: libahci_platform: Add function returning a clock-handle by id
        dt-bindings: ata: ahci: Add DWC AHCI SATA controller DT schema
        ata: ahci: Introduce firmware-specific caps initialization
        ata: ahci: Convert __ahci_port_base to accepting hpriv as arguments
        ata: libahci: Don't read AHCI version twice in the save-config method
        ...
      4078aa68
    • L
      Merge tag 'drm-next-2022-10-07-1' of git://anongit.freedesktop.org/drm/drm · 9d84bb40
      Linus Torvalds 提交于
      Pull drm fix from Dave Airlie:
       "This reverts the patch I found with rough bisection to instability
        around fences and the oops I got from netconsole.
      
        sched:
         - revert patch causing oopses"
      
      * tag 'drm-next-2022-10-07-1' of git://anongit.freedesktop.org/drm/drm:
        Revert "drm/sched: Use parent fence instead of finished"
      9d84bb40
    • L
      Merge tag 'for-6.1/passthrough-2022-10-04' of git://git.kernel.dk/linux · 7c989b1d
      Linus Torvalds 提交于
      Pull passthrough updates from Jens Axboe:
       "With these changes, passthrough NVMe support over io_uring now
        performs at the same level as block device O_DIRECT, and in many cases
        6-8% better.
      
        This contains:
      
         - Add support for fixed buffers for passthrough (Anuj, Kanchan)
      
         - Enable batched allocations and freeing on passthrough, similarly to
           what we support on the normal storage path (me)
      
         - Fix from Geert fixing an issue with !CONFIG_IO_URING"
      
      * tag 'for-6.1/passthrough-2022-10-04' of git://git.kernel.dk/linux:
        io_uring: Add missing inline to io_uring_cmd_import_fixed() dummy
        nvme: wire up fixed buffer support for nvme passthrough
        nvme: pass ubuffer as an integer
        block: extend functionality to map bvec iterator
        block: factor out blk_rq_map_bio_alloc helper
        block: rename bio_map_put to blk_mq_map_bio_put
        nvme: refactor nvme_alloc_request
        nvme: refactor nvme_add_user_metadata
        nvme: Use blk_rq_map_user_io helper
        scsi: Use blk_rq_map_user_io helper
        block: add blk_rq_map_user_io
        io_uring: introduce fixed buffer support for io_uring_cmd
        io_uring: add io_uring_cmd_import_fixed
        nvme: enable batched completions of passthrough IO
        nvme: split out metadata vs non metadata end_io uring_cmd completions
        block: allow end_io based requests in the completion batch handling
        block: change request end_io handler to pass back a return value
        block: enable batched allocation for blk_mq_alloc_request()
        block: kill deprecated BUG_ON() in the flush handling
      7c989b1d
    • L
      Merge tag 'for-6.1/block-2022-10-03' of git://git.kernel.dk/linux · 51338980
      Linus Torvalds 提交于
      Pull block updates from Jens Axboe:
      
       - NVMe pull requests via Christoph:
            - handle number of queue changes in the TCP and RDMA drivers
              (Daniel Wagner)
            - allow changing the number of queues in nvmet (Daniel Wagner)
            - also consider host_iface when checking ip options (Daniel
              Wagner)
            - don't map pages which can't come from HIGHMEM (Fabio M. De
              Francesco)
            - avoid unnecessary flush bios in nvmet (Guixin Liu)
            - shrink and better pack the nvme_iod structure (Keith Busch)
            - add comment for unaligned "fake" nqn (Linjun Bao)
            - print actual source IP address through sysfs "address" attr
              (Martin Belanger)
            - various cleanups (Jackie Liu, Wolfram Sang, Genjian Zhang)
            - handle effects after freeing the request (Keith Busch)
            - copy firmware_rev on each init (Keith Busch)
            - restrict management ioctls to admin (Keith Busch)
            - ensure subsystem reset is single threaded (Keith Busch)
            - report the actual number of tagset maps in nvme-pci (Keith
              Busch)
            - small fabrics authentication fixups (Christoph Hellwig)
            - add common code for tagset allocation and freeing (Christoph
              Hellwig)
            - stop using the request_queue in nvmet (Christoph Hellwig)
            - set min_align_mask before calculating max_hw_sectors (Rishabh
              Bhatnagar)
            - send a rediscover uevent when a persistent discovery controller
              reconnects (Sagi Grimberg)
            - misc nvmet-tcp fixes (Varun Prakash, zhenwei pi)
      
       - MD pull request via Song:
            - Various raid5 fix and clean up, by Logan Gunthorpe and David
              Sloan.
            - Raid10 performance optimization, by Yu Kuai.
      
       - sbitmap wakeup hang fixes (Hugh, Keith, Jan, Yu)
      
       - IO scheduler switching quisce fix (Keith)
      
       - s390/dasd block driver updates (Stefan)
      
       - support for recovery for the ublk driver (ZiyangZhang)
      
       - rnbd drivers fixes and updates (Guoqing, Santosh, ye, Christoph)
      
       - blk-mq and null_blk map fixes (Bart)
      
       - various bcache fixes (Coly, Jilin, Jules)
      
       - nbd signal hang fix (Shigeru)
      
       - block writeback throttling fix (Yu)
      
       - optimize the passthrough mapping handling (me)
      
       - prepare block cgroups to being gendisk based (Christoph)
      
       - get rid of an old PSI hack in the block layer, moving it to the
         callers instead where it belongs (Christoph)
      
       - blk-throttle fixes and cleanups (Yu)
      
       - misc fixes and cleanups (Liu Shixin, Liu Song, Miaohe, Pankaj,
         Ping-Xiang, Wolfram, Saurabh, Li Jinlin, Li Lei, Lin, Li zeming,
         Miaohe, Bart, Coly, Gaosheng
      
      * tag 'for-6.1/block-2022-10-03' of git://git.kernel.dk/linux: (162 commits)
        sbitmap: fix lockup while swapping
        block: add rationale for not using blk_mq_plug() when applicable
        block: adapt blk_mq_plug() to not plug for writes that require a zone lock
        s390/dasd: use blk_mq_alloc_disk
        blk-cgroup: don't update the blkg lookup hint in blkg_conf_prep
        nvmet: don't look at the request_queue in nvmet_bdev_set_limits
        nvmet: don't look at the request_queue in nvmet_bdev_zone_mgmt_emulate_all
        blk-mq: use quiesced elevator switch when reinitializing queues
        block: replace blk_queue_nowait with bdev_nowait
        nvme: remove nvme_ctrl_init_connect_q
        nvme-loop: use the tagset alloc/free helpers
        nvme-loop: store the generic nvme_ctrl in set->driver_data
        nvme-loop: initialize sqsize later
        nvme-fc: use the tagset alloc/free helpers
        nvme-fc: store the generic nvme_ctrl in set->driver_data
        nvme-fc: keep ctrl->sqsize in sync with opts->queue_size
        nvme-rdma: use the tagset alloc/free helpers
        nvme-rdma: store the generic nvme_ctrl in set->driver_data
        nvme-tcp: use the tagset alloc/free helpers
        nvme-tcp: store the generic nvme_ctrl in set->driver_data
        ...
      51338980
  10. 07 10月, 2022 16 次提交
    • L
      Merge tag 'for-6.1/io_uring-2022-10-03' of git://git.kernel.dk/linux · 0a78a376
      Linus Torvalds 提交于
      Pull io_uring updates from Jens Axboe:
      
       - Add supported for more directly managed task_work running.
      
         This is beneficial for real world applications that end up issuing
         lots of system calls as part of handling work. Normal task_work will
         always execute as we transition in and out of the kernel, even for
         "unrelated" system calls. It's more efficient to defer the handling
         of io_uring's deferred work until the application wants it to be run,
         generally in batches.
      
         As part of ongoing work to write an io_uring network backend for
         Thrift, this has been shown to greatly improve performance. (Dylan)
      
       - Add IOPOLL support for passthrough (Kanchan)
      
       - Improvements and fixes to the send zero-copy support (Pavel)
      
       - Partial IO handling fixes (Pavel)
      
       - CQE ordering fixes around CQ ring overflow (Pavel)
      
       - Support sendto() for non-zc as well (Pavel)
      
       - Support sendmsg for zerocopy (Pavel)
      
       - Networking iov_iter fix (Stefan)
      
       - Misc fixes and cleanups (Pavel, me)
      
      * tag 'for-6.1/io_uring-2022-10-03' of git://git.kernel.dk/linux: (56 commits)
        io_uring/net: fix notif cqe reordering
        io_uring/net: don't update msg_name if not provided
        io_uring: don't gate task_work run on TIF_NOTIFY_SIGNAL
        io_uring/rw: defer fsnotify calls to task context
        io_uring/net: fix fast_iov assignment in io_setup_async_msg()
        io_uring/net: fix non-zc send with address
        io_uring/net: don't skip notifs for failed requests
        io_uring/rw: don't lose short results on io_setup_async_rw()
        io_uring/rw: fix unexpected link breakage
        io_uring/net: fix cleanup double free free_iov init
        io_uring: fix CQE reordering
        io_uring/net: fix UAF in io_sendrecv_fail()
        selftest/net: adjust io_uring sendzc notif handling
        io_uring: ensure local task_work marks task as running
        io_uring/net: zerocopy sendmsg
        io_uring/net: combine fail handlers
        io_uring/net: rename io_sendzc()
        io_uring/net: support non-zerocopy sendto
        io_uring/net: refactor io_setup_async_addr
        io_uring/net: don't lose partial send_zc on fail
        ...
      0a78a376
    • L
      Merge tag 'fs-for_v6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 188943a1
      Linus Torvalds 提交于
      Pull ext2, udf, reiserfs, and quota updates from Jan Kara:
      
       - Fix for udf to make splicing work again
      
       - More disk format sanity checks for ext2 to avoid crashes found by
         syzbot
      
       - More quota disk format checks to avoid crashes found by fuzzing
      
       - Reiserfs & isofs cleanups
      
      * tag 'fs-for_v6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        quota: Add more checking after reading from quota file
        quota: Replace all block number checking with helper function
        quota: Check next/prev free block number after reading from quota file
        ext2: Use kvmalloc() for group descriptor array
        ext2: Add sanity checks for group and filesystem size
        udf: Support splicing to file
        isofs: delete unnecessary checks before brelse()
        fs/reiserfs: replace ternary operator with min() and min_t()
      188943a1
    • L
      Merge tag 'fsnotify-for_v6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · abf625dc
      Linus Torvalds 提交于
      Pull fsnotify updates from Jan Kara:
       "Two cleanups for fsnotify code"
      
      * tag 'fsnotify-for_v6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fanotify: Remove obsoleted fanotify_event_has_path()
        fsnotify: remove unused declaration
      abf625dc
    • L
      Merge tag '6.1-rc-ksmbd-fixes' of git://git.samba.org/ksmbd · 9f4b9bee
      Linus Torvalds 提交于
      Pull ksmbd updates from Steve French:
      
       - RDMA (smbdirect) fixes
      
       - fixes for SMB3.1.1 POSIX Extensions (especially for id mapping)
      
       - various casemapping fixes for mount and lookup
      
       - UID mapping fixes
      
       - fix confusing error message
      
       - protocol negotiation fixes, including NTLMSSP fix
      
       - two encryption fixes
      
       - directory listing fix
      
       - some cleanup fixes
      
      * tag '6.1-rc-ksmbd-fixes' of git://git.samba.org/ksmbd: (24 commits)
        ksmbd: validate share name from share config response
        ksmbd: call ib_drain_qp when disconnected
        ksmbd: make utf-8 file name comparison work in __caseless_lookup()
        ksmbd: Fix user namespace mapping
        ksmbd: hide socket error message when ipv6 config is disable
        ksmbd: reduce server smbdirect max send/receive segment sizes
        ksmbd: decrease the number of SMB3 smbdirect server SGEs
        ksmbd: Fix wrong return value and message length check in smb2_ioctl()
        ksmbd: set NTLMSSP_NEGOTIATE_SEAL flag to challenge blob
        ksmbd: fix encryption failure issue for session logoff response
        ksmbd: fix endless loop when encryption for response fails
        ksmbd: fill sids in SMB_FIND_FILE_POSIX_INFO response
        ksmbd: set file permission mode to match Samba server posix extension behavior
        ksmbd: change security id to the one samba used for posix extension
        ksmbd: update documentation
        ksmbd: casefold utf-8 share names and fix ascii lowercase conversion
        ksmbd: port to vfs{g,u}id_t and associated helpers
        ksmbd: fix incorrect handling of iterate_dir
        MAINTAINERS: remove Hyunchul Lee from ksmbd maintainers
        MAINTAINERS: Add Tom Talpey as ksmbd reviewer
        ...
      9f4b9bee
    • D
      Revert "drm/sched: Use parent fence instead of finished" · bafaf67c
      Dave Airlie 提交于
      This reverts commit e4dc45b1.
      
      This is causing instability on Linus' desktop, and I'm seeing
      oops with VK CTS runs.
      
      netconsole got me the following oops:
      [ 1234.778760] BUG: kernel NULL pointer dereference, address: 0000000000000088
      [ 1234.778782] #PF: supervisor read access in kernel mode
      [ 1234.778787] #PF: error_code(0x0000) - not-present page
      [ 1234.778791] PGD 0 P4D 0
      [ 1234.778798] Oops: 0000 [#1] PREEMPT SMP NOPTI
      [ 1234.778803] CPU: 7 PID: 805 Comm: systemd-journal Not tainted 6.0.0+ #2
      [ 1234.778809] Hardware name: System manufacturer System Product
      Name/PRIME X370-PRO, BIOS 5603 07/28/2020
      [ 1234.778813] RIP: 0010:drm_sched_job_done.isra.0+0xc/0x140 [gpu_sched]
      [ 1234.778828] Code: aa 0f 1d ce e9 57 ff ff ff 48 89 d7 e8 9d 8f 3f
      ce e9 4a ff ff ff 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 41 54 55 53
      48 89 fb <48> 8b af 88 00 00 00 f0 ff 8d f0 00 00 00 48 8b 85 80 01 00
      00 f0
      [ 1234.778834] RSP: 0000:ffffabe680380de0 EFLAGS: 00010087
      [ 1234.778839] RAX: ffffffffc04e9230 RBX: 0000000000000000 RCX: 0000000000000018
      [ 1234.778897] RDX: 00000ba278e8977a RSI: ffff953fb288b460 RDI: 0000000000000000
      [ 1234.778901] RBP: ffff953fb288b598 R08: 00000000000000e0 R09: ffff953fbd98b808
      [ 1234.778905] R10: 0000000000000000 R11: ffffabe680380ff8 R12: ffffabe680380e00
      [ 1234.778908] R13: 0000000000000001 R14: 00000000ffffffff R15: ffff953fbd9ec458
      [ 1234.778912] FS:  00007f35e7008580(0000) GS:ffff95428ebc0000(0000)
      knlGS:0000000000000000
      [ 1234.778916] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 1234.778919] CR2: 0000000000000088 CR3: 000000010147c000 CR4: 00000000003506e0
      [ 1234.778924] Call Trace:
      [ 1234.778981]  <IRQ>
      [ 1234.778989]  dma_fence_signal_timestamp_locked+0x6a/0xe0
      [ 1234.778999]  dma_fence_signal+0x2c/0x50
      [ 1234.779005]  amdgpu_fence_process+0xc8/0x140 [amdgpu]
      [ 1234.779234]  sdma_v3_0_process_trap_irq+0x70/0x80 [amdgpu]
      [ 1234.779395]  amdgpu_irq_dispatch+0xa9/0x1d0 [amdgpu]
      [ 1234.779609]  amdgpu_ih_process+0x80/0x100 [amdgpu]
      [ 1234.779783]  amdgpu_irq_handler+0x1f/0x60 [amdgpu]
      [ 1234.779940]  __handle_irq_event_percpu+0x46/0x190
      [ 1234.779946]  handle_irq_event+0x34/0x70
      [ 1234.779949]  handle_edge_irq+0x9f/0x240
      [ 1234.779954]  __common_interrupt+0x66/0x100
      [ 1234.779960]  common_interrupt+0xa0/0xc0
      [ 1234.779965]  </IRQ>
      [ 1234.779968]  <TASK>
      [ 1234.779971]  asm_common_interrupt+0x22/0x40
      [ 1234.779976] RIP: 0010:finish_mkwrite_fault+0x22/0x110
      [ 1234.779981] Code: 1f 84 00 00 00 00 00 90 0f 1f 44 00 00 41 55 41
      54 55 48 89 fd 53 48 8b 07 f6 40 50 08 0f 84 eb 00 00 00 48 8b 45 30
      48 8b 18 <48> 89 df e8 66 bd ff ff 48 85 c0 74 0d 48 89 c2 83 e2 01 48
      83 ea
      [ 1234.779985] RSP: 0000:ffffabe680bcfd78 EFLAGS: 00000202
      
      Revert it for now and figure it out later.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      bafaf67c
    • L
      Merge tag 'iomap-6.1-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 4c861141
      Linus Torvalds 提交于
      Pull iomap updates from Darrick Wong:
       "It's pretty quiet this time around -- a UAF bugfix and a new
        tracepoint so we can watch file writeback:
      
         - Fix a UAF bug when recording writeback mapping errors
      
         - Add a tracepoint so that we can monitor writeback mappings"
      
      * tag 'iomap-6.1-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        iomap: add a tracepoint for mappings returned by map_blocks
        iomap: iomap: fix memory corruption when recording errors during writeback
      4c861141
    • L
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · bc32a633
      Linus Torvalds 提交于
      Pull ext4 updates from Ted Ts'o:
       "The first two changes involve files outside of fs/ext4:
      
         - submit_bh() can never return an error, so change it to return void,
           and remove the unused checks from its callers
      
         - fix I_DIRTY_TIME handling so it will be set even if the inode
           already has I_DIRTY_INODE
      
        Performance:
      
         - Always enable i_version counter (as btrfs and xfs already do).
           Remove some uneeded i_version bumps to avoid unnecessary nfs cache
           invalidations
      
         - Wake up journal waiters in FIFO order, to avoid some journal users
           from not getting a journal handle for an unfairly long time
      
         - In ext4_write_begin() allocate any necessary buffer heads before
           starting the journal handle
      
         - Don't try to prefetch the block allocation bitmaps for a read-only
           file system
      
        Bug Fixes:
      
         - Fix a number of fast commit bugs, including resources leaks and out
           of bound references in various error handling paths and/or if the
           fast commit log is corrupted
      
         - Avoid stopping the online resize early when expanding a file system
           which is less than 16TiB to a size greater than 16TiB
      
         - Fix apparent metadata corruption caused by a race with a metadata
           buffer head getting migrated while it was trying to be read
      
         - Mark the lazy initialization thread freezable to prevent suspend
           failures
      
         - Other miscellaneous bug fixes
      
        Cleanups:
      
         - Break up the incredibly long ext4_full_super() function by
           refactoring to move code into more understandable, smaller
           functions
      
         - Remove the deprecated (and ignored) noacl and nouser_attr mount
           option
      
         - Factor out some common code in fast commit handling
      
         - Other miscellaneous cleanups"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (53 commits)
        ext4: fix potential out of bound read in ext4_fc_replay_scan()
        ext4: factor out ext4_fc_get_tl()
        ext4: introduce EXT4_FC_TAG_BASE_LEN helper
        ext4: factor out ext4_free_ext_path()
        ext4: remove unnecessary drop path references in mext_check_coverage()
        ext4: update 'state->fc_regions_size' after successful memory allocation
        ext4: fix potential memory leak in ext4_fc_record_regions()
        ext4: fix potential memory leak in ext4_fc_record_modified_inode()
        ext4: remove redundant checking in ext4_ioctl_checkpoint
        jbd2: add miss release buffer head in fc_do_one_pass()
        ext4: move DIOREAD_NOLOCK setting to ext4_set_def_opts()
        ext4: remove useless local variable 'blocksize'
        ext4: unify the ext4 super block loading operation
        ext4: factor out ext4_journal_data_mode_check()
        ext4: factor out ext4_load_and_init_journal()
        ext4: factor out ext4_group_desc_init() and ext4_group_desc_free()
        ext4: factor out ext4_geometry_check()
        ext4: factor out ext4_check_feature_compatibility()
        ext4: factor out ext4_init_metadata_csum()
        ext4: factor out ext4_encoding_init()
        ...
      bc32a633
    • L
      Merge tag 'affs-for-6.1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 7f198ba7
      Linus Torvalds 提交于
      Pull affs update from David Sterba:
       "One minor update for AFFS, switching away from strlcpy"
      
      * tag 'affs-for-6.1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        affs: move from strlcpy with unused retval to strscpy
      7f198ba7
    • L
      Merge tag 'for-6.1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 76e45035
      Linus Torvalds 提交于
      Pull btrfs updates from David Sterba:
       "There's a bunch of performance improvements, most notably the FIEMAP
        speedup, the new block group tree to speed up mount on large
        filesystems, more io_uring integration, some sysfs exports and the
        usual fixes and core updates.
      
        Summary:
      
        Performance:
      
         - outstanding FIEMAP speed improvement
            - algorithmic change how extents are enumerated leads to orders of
              magnitude speed boost (uncached and cached)
            - extent sharing check speedup (2.2x uncached, 3x cached)
            - add more cancellation points, allowing to interrupt seeking in
              files with large number of extents
            - more efficient hole and data seeking (4x uncached, 1.3x cached)
            - sample results:
      	    256M, 32K extents:   4s ->  29ms  (~150x)
      	    512M, 64K extents:  30s ->  59ms  (~550x)
      	    1G,  128K extents: 225s -> 120ms (~1800x)
      
         - improved inode logging, especially for directories (on dbench
           workload throughput +25%, max latency -21%)
      
         - improved buffered IO, remove redundant extent state tracking,
           lowering memory consumption and avoiding rb tree traversal
      
         - add sysfs tunable to let qgroup temporarily skip exact accounting
           when deleting snapshot, leading to a speedup but requiring a rescan
           after that, will be used by snapper
      
         - support io_uring and buffered writes, until now it was just for
           direct IO, with the no-wait semantics implemented in the buffered
           write path it now works and leads to speed improvement in IOPS
           (2x), throughput (2.2x), latency (depends, 2x to 150x)
      
         - small performance improvements when dropping and searching for
           extent maps as well as when flushing delalloc in COW mode
           (throughput +5MB/s)
      
        User visible changes:
      
         - new incompatible feature block-group-tree adding a dedicated tree
           for tracking block groups, this allows a much faster load during
           mount and avoids seeking unlike when it's scattered in the extent
           tree items
            - this reduces mount time for many-terabyte sized filesystems
            - conversion tool will be provided so existing filesystem can also
              be updated in place
            - to reduce test matrix and feature combinations requires no-holes
              and free-space-tree (mkfs defaults since 5.15)
      
         - improved reporting of super block corruption detected by scrub
      
         - scrub also tries to repair super block and does not wait until next
           commit
      
         - discard stats and tunables are exported in sysfs
           (/sys/fs/btrfs/FSID/discard)
      
         - qgroup status is exported in sysfs
           (/sys/sys/fs/btrfs/FSID/qgroups/)
      
         - verify that super block was not modified when thawing filesystem
      
        Fixes:
      
         - FIEMAP fixes
            - fix extent sharing status, does not depend on the cached status
              where merged
            - flush delalloc so compressed extents are reported correctly
      
         - fix alignment of VMA for memory mapped files on THP
      
         - send: fix failures when processing inodes with no links (orphan
           files and directories)
      
         - fix race between quota enable and quota rescan ioctl
      
         - handle more corner cases for read-only compat feature verification
      
         - fix missed extent on fsync after dropping extent maps
      
        Core:
      
         - lockdep annotations to validate various transactions states and
           state transitions
      
         - preliminary support for fs-verity in send
      
         - more effective memory use in scrub for subpage where sector is
           smaller than page
      
         - block group caching progress logic has been removed, load is now
           synchronous
      
         - simplify end IO callbacks and bio handling, use chained bios
           instead of own tracking
      
         - add no-wait semantics to several functions (tree search, nocow,
           flushing, buffered write
      
         - cleanups and refactoring
      
        MM changes:
      
         - export balance_dirty_pages_ratelimited_flags"
      
      * tag 'for-6.1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (177 commits)
        btrfs: set generation before calling btrfs_clean_tree_block in btrfs_init_new_buffer
        btrfs: drop extent map range more efficiently
        btrfs: avoid pointless extent map tree search when flushing delalloc
        btrfs: remove unnecessary next extent map search
        btrfs: remove unnecessary NULL pointer checks when searching extent maps
        btrfs: assert tree is locked when clearing extent map from logging
        btrfs: remove unnecessary extent map initializations
        btrfs: remove the refcount warning/check at free_extent_map()
        btrfs: add helper to replace extent map range with a new extent map
        btrfs: move open coded extent map tree deletion out of inode eviction
        btrfs: use cond_resched_rwlock_write() during inode eviction
        btrfs: use extent_map_end() at btrfs_drop_extent_map_range()
        btrfs: move btrfs_drop_extent_cache() to extent_map.c
        btrfs: fix missed extent on fsync after dropping extent maps
        btrfs: remove stale prototype of btrfs_write_inode
        btrfs: enable nowait async buffered writes
        btrfs: assert nowait mode is not used for some btree search functions
        btrfs: make btrfs_buffered_write nowait compatible
        btrfs: plumb NOWAIT through the write path
        btrfs: make lock_and_cleanup_extent_if_need nowait compatible
        ...
      76e45035
    • L
      Merge tag 'pull-path' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 4c0ed7d8
      Linus Torvalds 提交于
      Pull vfs constification updates from Al Viro:
       "whack-a-mole: constifying struct path *"
      
      * tag 'pull-path' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        ecryptfs: constify path
        spufs: constify path
        nd_jump_link(): constify path
        audit_init_parent(): constify path
        __io_setxattr(): constify path
        do_proc_readlink(): constify path
        overlayfs: constify path
        fs/notify: constify path
        may_linkat(): constify path
        do_sys_name_to_handle(): constify path
        ->getprocattr(): attribute name is const char *, TYVM...
      4c0ed7d8
    • L
      Merge tag 'pull-tomoyo' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 1586a703
      Linus Torvalds 提交于
      Pull misc tomoyo changes from Al Viro:
       "A couple of assorted tomoyo patches"
      
      * tag 'pull-tomoyo' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        tomoyo: struct path it might get from LSM callers won't have NULL dentry or mnt
        tomoyo: use vsnprintf() properly
      1586a703
    • L
      Merge tag 'pull-file_inode' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · ab296221
      Linus Torvalds 提交于
      Pull file_inode() updates from Al Vrio:
       "whack-a-mole: cropped up open-coded file_inode() uses..."
      
      * tag 'pull-file_inode' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        orangefs: use ->f_mapping
        _nfs42_proc_copy(): use ->f_mapping instead of file_inode()->i_mapping
        dma_buf: no need to bother with file_inode()->i_mapping
        nfs_finish_open(): don't open-code file_inode()
        bprm_fill_uid(): don't open-code file_inode()
        sgx: use ->f_mapping...
        exfat_iterate(): don't open-code file_inode(file)
        ibmvmc: don't open-code file_inode()
      ab296221
    • L
      Merge tag 'pull-file' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 7a3353c5
      Linus Torvalds 提交于
      Pull vfs file updates from Al Viro:
       "struct file-related stuff"
      
      * tag 'pull-file' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        dma_buf_getfile(): don't bother with ->f_flags reassignments
        Change calling conventions for filldir_t
        locks: fix TOCTOU race when granting write lease
      7a3353c5
    • L
      Merge tag 'pull-d_path' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 70df64d6
      Linus Torvalds 提交于
      Pull vfs d_path updates from Al Viro.
      
      * tag 'pull-d_path' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        d_path.c: typo fix...
        dynamic_dname(): drop unused dentry argument
      70df64d6
    • L
      Merge tag 'pull-inode' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 46811b5c
      Linus Torvalds 提交于
      Pull vfs inode update from Al Viro:
       "Saner inode_init_always(), also fixing a nilfs problem"
      
      * tag 'pull-inode' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        fs: fix UAF/GPF bug in nilfs_mdt_destroy
      46811b5c
    • L
      Merge tag 'linux-kselftest-kunit-6.1-rc1' of... · ffb39098
      Linus Torvalds 提交于
      Merge tag 'linux-kselftest-kunit-6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull KUnit updates from Shuah Khan:
       "Several documentation fixes, UML related cleanups, and a feature to
        enable/disable KUnit tests
      
        This includes the change to rename all_test_uml.config, and use it for
        '--alltests'. Note: if anyone was using all_tests_uml.config, this
        change breaks them.
      
        This change simplifies the usage and eliminates the need to type:
      
           --kunitconfig=tools/testing/kunit/configs/all_tests_uml.config
      
        A simple workaround to create a symlink to the new name can solve the
        problem for anyone using all_tests_uml.config.
      
        all_tests_uml.config should work across ~all architectures"
      
      * tag 'linux-kselftest-kunit-6.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        Documentation: Kunit: Use full path to .kunitconfig
        kunit: tool: rename all_test_uml.config, use it for --alltests
        kunit: tool: remove UML specific options from all_tests_uml.config
        lib: stackinit: update reference to kunit-tool
        lib: overflow: update reference to kunit-tool
        Documentation: KUnit: update links in the index page
        Documentation: KUnit: add intro to the getting-started page
        Documentation: KUnit: Reword start guide for selecting tests
        Documentation: KUnit: add note about mrproper in start.rst
        Documentation: KUnit: avoid repeating "kunit.py run" in start.rst
        Documentation: KUnit: remove duplicated docs for kunit_tool
        Documentation: Kunit: Add ref for other kinds of tests
        Documentation: KUnit: Fix non-uml anchor
        Documentation: Kunit: Fix inconsistent titles
        Documentation: kunit: fix trivial typo
        kunit: no longer call module_info(test, "Y") for kunit modules
        kunit: add kunit.enable to enable/disable KUnit test
        kunit: tool: make --raw_output=kunit (aka --raw_output) preserve leading spaces
      ffb39098