Skip to contentSkip to conversation

Fix crash in aic79xx probing in scsi-misc when no hardware is present

PATCH In review Andi Kleen 2 participants 2 messages Aug 31, 2005

Subsystems (2)
lore
Share & tools
lore

Andi Kleen

author
#0 lore raw

PATCH 1/1 Fix crash in aic79xx probing in scsi-misc when no hardware is present

aic79xx in scsi-misc would oops when no hardware was present. Reason was a duplicated call to free the spi transport object - it was done both in ahd_linux_exit and in the cleanup part of ahd_linux_init.

Just remove the superfluous call.

drivers/scsi/aic7xxx/aic79xx_osm.c +0 -1
Index: linux-2.6.13/drivers/scsi/aic7xxx/aic79xx_osm.c
===================================================================
@@ -2771,7 +2771,6 @@ ahd_linux_init(void)
 				      sizeof(struct ahd_linux_device));
 	if (ahd_linux_detect(&aic79xx_driver_template) > 0)
 		return 0;
-	spi_release_transport(ahd_linux_transport_template);
 	ahd_linux_exit();
 	return -ENODEV;
 }
#1 lore raw
Quoted 6 lines · Andi Kleen

aic79xx in scsi-misc would oops when no hardware was present. Reason was a duplicated call to free the spi transport object - it was done both in ahd_linux_exit and in the cleanup part of ahd_linux_init.

Just remove the superfluous call.

Actually, the fix is slightly wrong. The correct thing to do is remove ahd_linux_exit() (It really does nothing in the failure case except release the transport) which is an __exit function.

The one I plan to push is here:

http://www.kernel.org/git/?p=linux/kernel/git/jejb/scsi-misc-2.6.git;a=commit;h=a80b3424d9fde3c4b6d62adaf6dda78128dc5c27

James