On Mon, Aug 08, 2005 at 07:06:50PM -0500, James Bottomley wrote: > On Mon, 2005-08-08 at 10:42 -0700, Andrew Morton wrote: > > -mm has extra list_head debugging goodies. I'd be suspecting a list_head > > corruption detected somewhere under spi_release_transport(). > > Aha, looking in wrong driver ... the problem actually appears to be a > double release of the transport template in aic79xx. Try this patch
Hi James Sorry for the delay... This patch works like a charm!..... Cheers, ashok > > James > > diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.c > b/drivers/scsi/aic7xxx/aic79xx_osm.c > --- a/drivers/scsi/aic7xxx/aic79xx_osm.c > +++ b/drivers/scsi/aic7xxx/aic79xx_osm.c > @@ -2326,8 +2326,6 @@ done: > return (retval); > } > > -static void ahd_linux_exit(void); > - > static void ahd_linux_set_width(struct scsi_target *starget, int width) > { > struct Scsi_Host *shost = dev_to_shost(starget->dev.parent); > @@ -2772,7 +2770,7 @@ ahd_linux_init(void) > if (ahd_linux_detect(&aic79xx_driver_template) > 0) > return 0; > spi_release_transport(ahd_linux_transport_template); > - ahd_linux_exit(); > + > return -ENODEV; > } > > diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.c > b/drivers/scsi/aic7xxx/aic7xxx_osm.c > --- a/drivers/scsi/aic7xxx/aic7xxx_osm.c > +++ b/drivers/scsi/aic7xxx/aic7xxx_osm.c > @@ -2331,8 +2331,6 @@ ahc_platform_dump_card_state(struct ahc_ > { > } > > -static void ahc_linux_exit(void); > - > static void ahc_linux_set_width(struct scsi_target *starget, int width) > { > struct Scsi_Host *shost = dev_to_shost(starget->dev.parent); > > -- Cheers, Ashok Raj - Open Source Technology Center - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/