2001-10-16 02:22:59

by Tim Hockin

[permalink] [raw]
Subject: [PATCH] misc minor SCSI fixes

diff -ruN dist-2.4.12+patches/drivers/scsi/scsi.c cvs-2.4.12+patches/drivers/scsi/scsi.c
--- dist-2.4.12+patches/drivers/scsi/scsi.c Mon Oct 15 10:22:41 2001
+++ cvs-2.4.12+patches/drivers/scsi/scsi.c Mon Oct 15 10:22:41 2001
@@ -1836,6 +1837,8 @@

pcount = next_scsi_host;

+ MOD_INC_USE_COUNT;
+
/* The detect routine must carefully spinunlock/spinlock if
it enables interrupts, since all interrupt handlers do
spinlock as well.
@@ -1966,8 +1968,6 @@
(scsi_init_memory_start - scsi_memory_lower_value) / 1024,
(scsi_memory_upper_value - scsi_init_memory_start) / 1024);
#endif
-
- MOD_INC_USE_COUNT;

if (out_of_space) {
scsi_unregister_host(tpnt); /* easiest way to clean up?? */
diff -ruN dist-2.4.12+patches/drivers/scsi/sd.c cvs-2.4.12+patches/drivers/scsi/sd.c
--- dist-2.4.12+patches/drivers/scsi/sd.c Mon Oct 15 10:22:41 2001
+++ cvs-2.4.12+patches/drivers/scsi/sd.c Mon Oct 15 10:22:41 2001
@@ -152,6 +158,9 @@
int diskinfo[4];

SDev = rscsi_disks[DEVICE_NR(dev)].device;
+ if (!SDev)
+ return -ENODEV;
+
/*
* If we are in the middle of error recovery, don't let anyone
* else try and use this device. Also, if error recovery fails, it
@@ -533,6 +546,8 @@

target = DEVICE_NR(inode->i_rdev);
SDev = rscsi_disks[target].device;
+ if (!SDev)
+ return -ENODEV;

SDev->access_count--;


Attachments:
scsi-misc.diff (1.33 kB)