git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
drivers
/
scsi
/
scsi_proc.c
diff --git
a/drivers/scsi/scsi_proc.c
b/drivers/scsi/scsi_proc.c
index
55200e4
..
07be62b
100644
(file)
--- a/
drivers/scsi/scsi_proc.c
+++ b/
drivers/scsi/scsi_proc.c
@@
-266,6
+266,8
@@
static ssize_t proc_scsi_write(struct file *file, const char __user *buf,
lun = simple_strtoul(p + 1, &p, 0);
err = scsi_add_single_device(host, channel, id, lun);
lun = simple_strtoul(p + 1, &p, 0);
err = scsi_add_single_device(host, channel, id, lun);
+ if (err >= 0)
+ err = length;
/*
* Usage: echo "scsi remove-single-device 0 1 2 3" >/proc/scsi/scsi
/*
* Usage: echo "scsi remove-single-device 0 1 2 3" >/proc/scsi/scsi
@@
-282,13
+284,6
@@
static ssize_t proc_scsi_write(struct file *file, const char __user *buf,
err = scsi_remove_single_device(host, channel, id, lun);
}
err = scsi_remove_single_device(host, channel, id, lun);
}
- /*
- * convert success returns so that we return the
- * number of bytes consumed.
- */
- if (!err)
- err = length;
-
out:
free_page((unsigned long)buffer);
return err;
out:
free_page((unsigned long)buffer);
return err;