[lkml]   [2021]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH v1 5/6] scsi: ufs: Let host_sem cover the entire system suspend/resume
Hi Bart,

On 2021-05-14 11:55, Bart Van Assche wrote:
> On 5/12/21 10:55 PM, Can Guo wrote:
>> UFS error handling now is doing more than just re-probing, but also
>> sending
>> scsi cmds, e.g., for clearing UACs, and recovering runtime PM error,
>> which
>> may change runtime status of scsi devices. To protect system
>> suspend/resume
>> from being disturbed by error handling, move the host_sem from wl pm
>> ops
>> to ufshcd_suspend_prepare() and ufshcd_resume_complete().
> In ufshcd.h I found the following:
> * @host_sem: semaphore used to serialize concurrent contexts
> That's the wrong way to use a synchronization object. A synchronization
> object must protect data instead of code. Does host_sem perhaps need to
> be split into multiple synchronization objects?

Thanks for the comments. These contexts are changing critical data and
registers, so the sem is used to protect data actually, just like the
scaling_lock protecting scaling and cmd transations.


Can Guo.

> Thanks,
> Bart.

 \ /
  Last update: 2021-05-17 05:23    [W:0.113 / U:0.148 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site