[SCSI] scsi_debug: use scsi_build_sense_buffer
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Tue, 25 Mar 2008 00:26:50 +0000 (09:26 +0900)
committerJames Bottomley <James.Bottomley@HansenPartnership.com>
Mon, 7 Apr 2008 17:19:01 +0000 (12:19 -0500)
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Cc: Douglas Gilbert <dougg@torque.net>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
drivers/scsi/scsi_debug.c

index 4f4c5b7bdef5ce386bd1a4eefbd10cce0a4d2705..5f348e7b1184fafec03c036046b2ef9c6bfe1301 100644 (file)
@@ -46,6 +46,7 @@
 #include <scsi/scsi_device.h>
 #include <scsi/scsi_host.h>
 #include <scsi/scsicam.h>
+#include <scsi/scsi_eh.h>
 
 #include <linux/stat.h>
 
@@ -1808,22 +1809,13 @@ static struct sdebug_dev_info * devInfoReg(struct scsi_device * sdev)
 static void mk_sense_buffer(struct sdebug_dev_info * devip, int key,
                            int asc, int asq)
 {
-       unsigned char * sbuff;
+       unsigned char *sbuff;
 
        sbuff = devip->sense_buff;
        memset(sbuff, 0, SDEBUG_SENSE_LEN);
-       if (scsi_debug_dsense) {
-               sbuff[0] = 0x72;  /* descriptor, current */
-               sbuff[1] = key;
-               sbuff[2] = asc;
-               sbuff[3] = asq;
-       } else {
-               sbuff[0] = 0x70;  /* fixed, current */
-               sbuff[2] = key;
-               sbuff[7] = 0xa;   /* implies 18 byte sense buffer */
-               sbuff[12] = asc;
-               sbuff[13] = asq;
-       }
+
+       scsi_build_sense_buffer(scsi_debug_dsense, sbuff, key, asc, asq);
+
        if (SCSI_DEBUG_OPT_NOISE & scsi_debug_opts)
                printk(KERN_INFO "scsi_debug:    [sense_key,asc,ascq]: "
                      "[0x%x,0x%x,0x%x]\n", key, asc, asq);