1. Jun 19, 2023
  2. Jun 18, 2023
    • Damien Le Moal's avatar
      ata: libata-scsi: Avoid deadlock on rescan after device resume · 6aa0365a
      Damien Le Moal authored
      
      
      When an ATA port is resumed from sleep, the port is reset and a power
      management request issued to libata EH to reset the port and rescanning
      the device(s) attached to the port. Device rescanning is done by
      scheduling an ata_scsi_dev_rescan() work, which will execute
      scsi_rescan_device().
      
      However, scsi_rescan_device() takes the generic device lock, which is
      also taken by dpm_resume() when the SCSI device is resumed as well. If
      a device rescan execution starts before the completion of the SCSI
      device resume, the rcu locking used to refresh the cached VPD pages of
      the device, combined with the generic device locking from
      scsi_rescan_device() and from dpm_resume() can cause a deadlock.
      
      Avoid this situation by changing struct ata_port scsi_rescan_task to be
      a delayed work instead of a simple work_struct. ata_scsi_dev_rescan() is
      modified to check if the SCSI device associated with the ATA device that
      must be rescanned is not suspended. If the SCSI device is still
      suspended, ata_scsi_dev_rescan() returns early and reschedule itself for
      execution after an arbitrary delay of 5ms.
      
      Reported-by: default avatarKai-Heng Feng <kai.heng.feng@canonical.com>
      Reported-by: default avatarJoe Breuer <linux-kernel@jmbreuer.net>
      Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217530
      Fixes: a19a93e4
      
       ("scsi: core: pm: Rely on the device driver core for async power management")
      Signed-off-by: default avatarDamien Le Moal <dlemoal@kernel.org>
      Reviewed-by: default avatarHannes Reinecke <hare@suse.de>
      Tested-by: default avatarKai-Heng Feng <kai.heng.feng@canonical.com>
      Tested-by: default avatarJoe Breuer <linux-kernel@jmbreuer.net>
      6aa0365a
    • Sui Jingfeng's avatar
      drm/ingenic: Kconfig: select REGMAP and REGMAP_MMIO · f009d0ea
      Sui Jingfeng authored
      
      
      Otherwise its failed to pass basic compile test on platform without
      REGMAP_MMIO selected by defconfig
      
      make -j$(nproc) ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64-
      
        SYNC    include/config/auto.conf.cmd
        Checking missing-syscalls for N32
        CALL    scripts/checksyscalls.sh
        Checking missing-syscalls for O32
        CALL    scripts/checksyscalls.sh
        CALL    scripts/checksyscalls.sh
        MODPOST Module.symvers
      ERROR: modpost: "__devm_regmap_init_mmio_clk" [drivers/gpu/drm/ingenic/ingenic-drm.ko] undefined!
      make[1]: *** [scripts/Makefile.modpost:136: Module.symvers] Error 1
      make: *** [Makefile:1978: modpost] Error 2
      
      V2: Order alphabetically
      
      Signed-off-by: default avatarSui Jingfeng <suijingfeng@loongson.cn>
      Reviewed-by: default avatarSam Ravnborg <sam@ravnborg.org>
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230607110650.569522-1-suijingfeng@loongson.cn
      f009d0ea
    • Linus Torvalds's avatar
      Merge tag 'staging-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 1b29d271
      Linus Torvalds authored
      Pull staging driver fix from Greg KH:
       "Here is a single staging driver "fix" for 6.4-rc7. I've been sitting
        on it in my tree for many weeks as it is just a simple documentation
        update, with the hope that maybe some other staging driver fixes would
        need to be merged for 6.4-final, but that does not seem to be the
        case.
      
        So please, pull in this one documentation update so that Aaro doesn't
        get emails going forward that he can't do anything about"
      
      * tag 'staging-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: octeon: delete my name from TODO contact
      1b29d271
    • Linus Torvalds's avatar
      Merge tag 'usb-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 670062e7
      Linus Torvalds authored
      Pull USB / Thunderbolt fixes from Greg KH:
       "Here are some small USB and Thunderbolt driver fixes and new device
        ids for 6.4-rc7 to resolve some reported problems. Included in here
        are:
      
         - new USB serial device ids
      
         - USB gadget core fixes for long-dissussed problems
      
         - dwc3 bugfixes for reported issues.
      
         - typec driver fixes
      
         - thunderbolt driver fixes
      
        All of these have been in linux-next this week with no reported issues"
      
      * tag 'usb-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: gadget: udc: core: Prevent soft_connect_store() race
        usb: gadget: udc: core: Offload usb_udc_vbus_handler processing
        usb: typec: Fix fast_role_swap_current show function
        usb: typec: ucsi: Fix command cancellation
        USB: dwc3: fix use-after-free on core driver unbind
        USB: dwc3: qcom: fix NULL-deref on suspend
        usb: dwc3: gadget: Reset num TRBs before giving back the request
        usb: gadget: udc: renesas_usb3: Fix RZ/V2M {modprobe,bind} error
        USB: serial: option: add Quectel EM061KGL series
        thunderbolt: Mask ring interrupt on Intel hardware as well
        thunderbolt: Do not touch CL state configuration during discovery
        thunderbolt: Increase DisplayPort Connection Manager handshake timeout
        thunderbolt: dma_test: Use correct value for absent rings when creating paths
      670062e7