On 2023/05/05 18:06, yangxingui wrote: > > > On 2023/5/5 16:17, Damien Le Moal wrote: >> On 2023/05/05 11:57, Xingui Yang wrote: >>> The function ata_get_identity() uses the helper ata_scsi_find_dev() to get >>> the ata_device structure of a scsi device. However, when the ata device is >>> managed by libsas, ata_scsi_find_dev() returns NULL, turning >>> ata_get_identity() into a nop and always returns -ENOMSG. >> >> What do you do to hit the issue ? A while back for me it was the queue depth >> setting causing problems. As Garry mentioned, this led to patch 141f3d6256e5 >> ("ata: libata-sata: Fix device queue depth control"). > Attempt to return the correct value at ata_scsi_find_dev() instead of > NULL, when the ata device is managed by libsas? That I understand. My question is *what* user operation/command triggers this ? Because on my test setup, under normal use, I do not see this issue (beside what was already corrected with the queue depth control). Is the issue showing up when using passthrough commands only ? -- Damien Le Moal Western Digital Research