lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <08b901db0f17$d6a20b50$83e621f0$@samsung.com>
Date: Wed, 25 Sep 2024 15:54:59 +0900
From: "Seunghwan Baek" <sh8267.baek@...sung.com>
To: "'Bart Van Assche'" <bvanassche@....org>,
	<linux-kernel@...r.kernel.org>, <linux-scsi@...r.kernel.org>,
	<martin.petersen@...cle.com>, <James.Bottomley@...senPartnership.com>,
	<avri.altman@....com>, <alim.akhtar@...sung.com>
Cc: <grant.jung@...sung.com>, <jt77.jang@...sung.com>,
	<junwoo80.lee@...sung.com>, <dh0421.hwang@...sung.com>,
	<jangsub.yi@...sung.com>, <sh043.lee@...sung.com>, <cw9316.lee@...sung.com>,
	<wkon.kim@...sung.com>, <stable@...r.kernel.org>
Subject: RE: [PATCH v1 1/1] ufs: core: set SDEV_OFFLINE when ufs shutdown.

> On 9/23/24 7:17 PM, Seunghwan Baek wrote:> That's because SSU (Start Stop
> Unit) command must be sent during
> > shutdown process. If SDEV_OFFLINE is set for wlun, SSU command cannot
> > be sent because it is rejected by the scsi layer. Therefore, we
> > consider to set SDEV_QUIESCE for wlun, and set SDEV_OFFLINE for other
> > lus.
> Right. Since ufshcd_wl_shutdown() is expected to stop all DMA related to
> the UFS host, shouldn't there be a scsi_device_quiesce(sdev) call after
> the __ufshcd_wl_suspend(hba, UFS_SHUTDOWN_PM) call?
> 
> Thanks,
> 
> Bart.

Yes. __ufshcd_wl_suspend(hba, UFS_SHUTDOWN_PM) should be called after
scsi_device_quiesce(sdev). Generally, the SSU command is the last command
before UFS power off. Therefore, if __ufshcd_wl_suspend is performed
before scsi_device_quiesce, other commands may be performed after the SSU
command and UFS may not guarantee the operation of the SSU command, which
may cause other problems. This order must be guaranteed.

And with SDEV_QUIESCE, deadlock issue cannot be avoided due to requeue.
We need to return the i/o error with SDEV_OFFLINE to avoid the mentioned
deadlock problem.


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ