Skip to content
Snippets Groups Projects
  1. Apr 26, 2022
  2. Jan 10, 2022
  3. Nov 19, 2021
  4. Oct 21, 2021
  5. Oct 19, 2021
  6. Oct 12, 2021
  7. Sep 15, 2021
  8. Aug 03, 2021
  9. Jun 19, 2021
  10. Jun 16, 2021
  11. Jun 02, 2021
  12. May 15, 2021
  13. May 11, 2021
    • Asutosh Das's avatar
      scsi: ufs: core: Enable power management for wlun · b294ff3e
      Asutosh Das authored
      
      During runtime-suspend of ufs host, the SCSI devices are already suspended
      and so are the queues associated with them. However, the ufs host sends SSU
      (START_STOP_UNIT) to the wlun during runtime-suspend.
      
      During the process blk_queue_enter() checks if the queue is not in suspended
      state. If so, it waits for the queue to resume, and never comes out of
      it. Commit 52abca64 ("scsi: block: Do not accept any requests while
      suspended") adds the check to see if the queue is in suspended state in
      blk_queue_enter().
      
      Call trace:
       __switch_to+0x174/0x2c4
       __schedule+0x478/0x764
       schedule+0x9c/0xe0
       blk_queue_enter+0x158/0x228
       blk_mq_alloc_request+0x40/0xa4
       blk_get_request+0x2c/0x70
       __scsi_execute+0x60/0x1c4
       ufshcd_set_dev_pwr_mode+0x124/0x1e4
       ufshcd_suspend+0x208/0x83c
       ufshcd_runtime_suspend+0x40/0x154
       ufshcd_pltfrm_runtime_suspend+0x14/0x20
       pm_generic_runtime_suspend+0x28/0x3c
       __rpm_callback+0x80/0x2a4
       rpm_suspend+0x308/0x614
       rpm_idle+0x158/0x228
       pm_runtime_work+0x84/0xac
       process_one_work+0x1f0/0x470
       worker_thread+0x26c/0x4c8
       kthread+0x13c/0x320
       ret_from_fork+0x10/0x18
      
      Fix this by registering ufs device wlun as a SCSI driver and registering it
      for block runtime-pm. Also make this a supplier for all other LUNs. This
      way the wlun device suspends after all the consumers and resumes after HBA
      resumes. This also registers a new SCSI driver for rpmb wlun. This new
      driver is mostly used to clear rpmb uac.
      
      [mkp: resolve merge conflict with 5.13-rc1 and fix doc warning]
      
      Fixed smatch warnings:
      Reported-by: default avatarkernel test robot <lkp@intel.com>
      Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      
      Link: https://lore.kernel.org/r/4662c462e79e3e7f541f54f88f8993f421026d83.1619223249.git.asutoshd@codeaurora.org
      
      
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Co-developed-by: default avatarCan Guo <cang@codeaurora.org>
      Signed-off-by: default avatarCan Guo <cang@codeaurora.org>
      Signed-off-by: default avatarAsutosh Das <asutoshd@codeaurora.org>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      b294ff3e
  14. Mar 17, 2021
  15. Jan 06, 2021
  16. Dec 09, 2020
  17. Dec 07, 2020
  18. Nov 17, 2020
  19. Nov 11, 2020
  20. Nov 05, 2020
  21. Sep 23, 2020
  22. Sep 10, 2020
  23. Sep 09, 2020
  24. Aug 18, 2020
  25. Jul 31, 2020
  26. Jul 29, 2020
  27. Jul 14, 2020
Loading