|
From: | Lin Ma |
Subject: | Re: [Question] About GET LBA STATUS(16) support in qemu scsi emulation layer |
Date: | Tue, 10 Mar 2020 06:18:00 +0000 |
First of all, Thanks for your reply, Stefan.
We know that the GET LBA STATUS works well under scsi lun passthrough due to the vm directly talks to the scsi target.
I'm curious that if I use file backend image(say qcow2) + qemu scsi emulation, Does it make sense if I issue sg_get_lba_status in vm to get the lba status?
If it doesn't make sense, That could explain why qemu scsi emulation layer lack of this support for a long time and no user complains.
Thanks,
LinFrom: Stefan Hajnoczi Sent: Friday, March 6, 2020 9:01 PM To: Lin Ma Cc: address@hidden; address@hidden; address@hidden; Eric Blake; Jon Maloy Subject: Re: [Question] About GET LBA STATUS(16) support in qemu scsi emulation layer On Sun, Mar 01, 2020 at 01:01:29PM +0000, Lin Ma wrote:
> Hi all, > > I'm not familiar with scsi, I'm curious why there is no GET LBA STATUS(16) support in qemu scsi emulation layer. > > So far, There is only one subcommand of SERVICE ACTION was implemented: The READ CAPACITY(16) > e.g. > static int32_t scsi_disk_emulate_command(SCSIRequest *req, uint8_t *buf) > [......] > case SERVICE_ACTION_IN_16: > /* Service Action In subcommands. */ > if ((req->cmd.buf[1] & 31) == SAI_READ_CAPACITY_16) { > [......] > } > trace_scsi_disk_emulate_command_SAI_unsupported(); > goto illegal_request; > [......] > > > It seems that this situation has been for a long time. Is the GET LBA STATUS (16 or 32) unnessesary for qemu scsi emulation or did I misunderstand something? GET LBA STATUS is optional according to the SBC specification so QEMU's SCSI target is conformant. I guess the question is which applications need this command? It's probably a case of no one needing this command enough to implement it yet. Stefan |
[Prev in Thread] | Current Thread | [Next in Thread] |