On 20.01.2014, at 16:03, Alexander Graf <ag...@suse.de> wrote:

> 
> On 12.01.2014, at 23:34, Nathan Whitehorn <nwhiteh...@freebsd.org> wrote:
> 
>> Intercept REPORT_LUNS commands addressed either to SRP LUN 0 or the 
>> well-known
>> LUN for REPORT_LUNS commands. This is required to implement the SAM and SPC
>> specifications.
>> 
>> Since SRP implements only a single SCSI target port per connection, the SRP
>> target is required to report all available LUNs in response to a REPORT_LUNS
>> command addressed either to LUN 0 or the well-known LUN. Instead, QEMU was
>> forwarding such requests to the first QEMU SCSI target, with the result that
>> initiators that relied on this feature would only see LUNs on the first QEMU
>> SCSI target.
>> 
>> Behavior for REPORT_LUNS commands addressed to any other LUN is not specified
>> by the standard and so is left unchanged. This preserves behavior under Linux
>> and SLOF, which enumerate possible LUNs by hand and so address no commands
>> either to LUN 0 or the well-known REPORT_LUNS LUN.
>> 
>> Signed-off-by: Nathan Whitehorn <nwhiteh...@freebsd.org>
> 
> Thanks, applied to ppc-next.

I've also folded in the patch below in my queue to fix compilation on 32bit 
hosts.


Alex

diff --git a/hw/scsi/spapr_vscsi.c b/hw/scsi/spapr_vscsi.c
index 123a942..a21dd34 100644
--- a/hw/scsi/spapr_vscsi.c
+++ b/hw/scsi/spapr_vscsi.c
@@ -63,7 +63,7 @@
 #define SCSI_SENSE_BUF_SIZE     96
 #define SRP_RSP_SENSE_DATA_LEN  18

-#define SRP_REPORT_LUNS_WLUN    0xc10100000000000
+#define SRP_REPORT_LUNS_WLUN    0xc10100000000000ULL

 typedef union vscsi_crq {
     struct viosrp_crq s;


Reply via email to