[PATCH 0/4] Untie the host lock entanglement - part 1

Avri Altman posted 4 patches 1 month ago
There is a newer version of this series
drivers/ufs/core/ufshcd.c | 38 ++++++++++++++++++++++++--------------
include/ufs/ufshcd.h      |  3 +++
2 files changed, 27 insertions(+), 14 deletions(-)
[PATCH 0/4] Untie the host lock entanglement - part 1
Posted by Avri Altman 1 month ago
While trying to simplify the ufs core driver with the guard() macro [1],
Bart made note of the abuse of the scsi host lock in the ufs driver.
Indeed, the host lock is deeply entangled in various flows across the
driver, as if it was some occasional default synchronization mean.

Here is the first part of defusing it, replace some of its occurrences
of host registers accesses, with a dedicated host register lock. 

Doing this in phases seems like a reasonable approach, given the myriad
use.


[1] https://lore.kernel.org/linux-scsi/0b031b8f-c07c-42ef-af93-7336439d3c37@acm.org/

Avri Altman (4):
  scsi: ufs: core: Introduce a new host register lock
  scsi: ufs: core: Use reg_lock to protect UTMRLCLR
  scsi: ufs: core: Use reg_lock to protect UTRLCLR
  scsi: ufs: core: Use reg_lock to protect HCE register

 drivers/ufs/core/ufshcd.c | 38 ++++++++++++++++++++++++--------------
 include/ufs/ufshcd.h      |  3 +++
 2 files changed, 27 insertions(+), 14 deletions(-)

-- 
2.25.1