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.c
diff --git
a/drivers/scsi/scsi.c
b/drivers/scsi/scsi.c
index
73994e2
..
c551bb8
100644
(file)
--- a/
drivers/scsi/scsi.c
+++ b/
drivers/scsi/scsi.c
@@
-48,6
+48,7
@@
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/completion.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/completion.h>
+#include <linux/devfs_fs_kernel.h>
#include <linux/unistd.h>
#include <linux/spinlock.h>
#include <linux/kmod.h>
#include <linux/unistd.h>
#include <linux/spinlock.h>
#include <linux/kmod.h>
@@
-135,8
+136,9
@@
struct scsi_request *scsi_allocate_request(struct scsi_device *sdev,
const int size = offset + sizeof(struct request);
struct scsi_request *sreq;
const int size = offset + sizeof(struct request);
struct scsi_request *sreq;
- sreq = k
z
alloc(size, gfp_mask);
+ sreq = k
m
alloc(size, gfp_mask);
if (likely(sreq != NULL)) {
if (likely(sreq != NULL)) {
+ memset(sreq, 0, size);
sreq->sr_request = (struct request *)(((char *)sreq) + offset);
sreq->sr_device = sdev;
sreq->sr_host = sdev->host;
sreq->sr_request = (struct request *)(((char *)sreq) + offset);
sreq->sr_device = sdev;
sreq->sr_host = sdev->host;
@@
-565,8
+567,7
@@
int scsi_dispatch_cmd(struct scsi_cmnd *cmd)
/*
* If SCSI-2 or lower, store the LUN value in cmnd.
*/
/*
* If SCSI-2 or lower, store the LUN value in cmnd.
*/
- if (cmd->device->scsi_level <= SCSI_2 &&
- cmd->device->scsi_level != SCSI_UNKNOWN) {
+ if (cmd->device->scsi_level <= SCSI_2) {
cmd->cmnd[1] = (cmd->cmnd[1] & 0x1f) |
(cmd->device->lun << 5 & 0xe0);
}
cmd->cmnd[1] = (cmd->cmnd[1] & 0x1f) |
(cmd->device->lun << 5 & 0xe0);
}
@@
-1244,9
+1245,10
@@
static int __init init_scsi(void)
if (error)
goto cleanup_sysctl;
if (error)
goto cleanup_sysctl;
- for_each_
possible_
cpu(i)
+ for_each_cpu(i)
INIT_LIST_HEAD(&per_cpu(scsi_done_q, i));
INIT_LIST_HEAD(&per_cpu(scsi_done_q, i));
+ devfs_mk_dir("scsi");
printk(KERN_NOTICE "SCSI subsystem initialized\n");
return 0;
printk(KERN_NOTICE "SCSI subsystem initialized\n");
return 0;
@@
-1271,6
+1273,7
@@
static void __exit exit_scsi(void)
scsi_exit_sysctl();
scsi_exit_hosts();
scsi_exit_devinfo();
scsi_exit_sysctl();
scsi_exit_hosts();
scsi_exit_devinfo();
+ devfs_remove("scsi");
scsi_exit_procfs();
scsi_exit_queue();
}
scsi_exit_procfs();
scsi_exit_queue();
}