Re: [PATCH 01/10] scsi: xen: Drop use of internal host codes.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04.08.22 18:28, Mike Christie wrote:
On 8/4/22 1:18 AM, Juergen Gross wrote:
On 04.08.22 05:40, Mike Christie wrote:
The error codes:

DID_TARGET_FAILURE
DID_NEXUS_FAILURE
DID_ALLOC_FAILURE
DID_MEDIUM_ERROR

are internal to the SCSI layer. Drivers must not use them because:

1. They are not propagated upwards, so SG IO/passthrough users will not
see an error and think a command was successful.

xen-scsiback will never see this error and should not try to send it.

2. There is no handling for them in scsi_decide_disposition so if
xen-scsifront were to return the error to scsi-ml then it kicks off the
error handler which is definitely not what we want.

This patch remove the use from xen-scsifront/back.

Signed-off-by: Mike Christie <michael.christie@xxxxxxxxxx>
---
   drivers/scsi/xen-scsifront.c       |  8 --------
   drivers/xen/xen-scsiback.c         | 12 ------------
   include/xen/interface/io/vscsiif.h | 10 +---------
   3 files changed, 1 insertion(+), 29 deletions(-)


...

diff --git a/include/xen/interface/io/vscsiif.h b/include/xen/interface/io/vscsiif.h
index 7ea4dc9611c4..44eb1f34f1a0 100644
--- a/include/xen/interface/io/vscsiif.h
+++ b/include/xen/interface/io/vscsiif.h
@@ -316,16 +316,8 @@ struct vscsiif_response {
   #define XEN_VSCSIIF_RSLT_HOST_TRANSPORT_DISRUPTED 14
   /* Transport class fastfailed */
   #define XEN_VSCSIIF_RSLT_HOST_TRANSPORT_FAILFAST  15
-/* Permanent target failure */
-#define XEN_VSCSIIF_RSLT_HOST_TARGET_FAILURE      16
-/* Permanent nexus failure on path */
-#define XEN_VSCSIIF_RSLT_HOST_NEXUS_FAILURE       17
-/* Space allocation on device failed */
-#define XEN_VSCSIIF_RSLT_HOST_ALLOC_FAILURE       18
-/* Medium error */
-#define XEN_VSCSIIF_RSLT_HOST_MEDIUM_ERROR        19
   /* Transport marginal errors */
-#define XEN_VSCSIIF_RSLT_HOST_TRANSPORT_MARGINAL  20
+#define XEN_VSCSIIF_RSLT_HOST_TRANSPORT_MARGINAL  16

Please drop the modifications of this header.

This is a copy of the master from the Xen repository. It might be used
in multiple OS'es across many releases, so it needs to be regarded as ABI.


How do you want to handle scsifront_host_byte?

xen-scsiback.c will never return those error codes, but can some other
implementation? Do you want me to add translation from the XEN_VSCSIIF
to some other DID codes?

Its fine for scsifront to use the "default:" fallback in this case.


Juergen

Attachment: OpenPGP_0xB0DE9DD628BF132F.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux