summaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2010-09-17 00:46:42 +0900
committerJames Bottomley <James.Bottomley@suse.de>2010-10-15 10:18:48 -0400
commit478971600e47cb83ff2d3c63c5c24f2b04b0d6a1 (patch)
tree8a426c30523aa558249bc8e4844b757af6ac1b96 /block
parent16d3ea26f82271fef9b1c4523b5e1ea31fa39eec (diff)
downloadlinux-478971600e47cb83ff2d3c63c5c24f2b04b0d6a1.tar.bz2
[SCSI] bsg: fix incorrect device_status value
bsg incorrectly returns sg's masked_status value for device_status. [jejb: fix up expression logic] Reported-by: Douglas Gilbert <dgilbert@interlog.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Cc: Stable Tree <stable@kernel.org> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'block')
-rw-r--r--block/bsg.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/block/bsg.c b/block/bsg.c
index 82d58829ba59..0c00870553a3 100644
--- a/block/bsg.c
+++ b/block/bsg.c
@@ -426,7 +426,7 @@ static int blk_complete_sgv4_hdr_rq(struct request *rq, struct sg_io_v4 *hdr,
/*
* fill in all the output members
*/
- hdr->device_status = status_byte(rq->errors);
+ hdr->device_status = rq->errors & 0xff;
hdr->transport_status = host_byte(rq->errors);
hdr->driver_status = driver_byte(rq->errors);
hdr->info = 0;