|
From: Kenn H. <ke...@us...> - 2005-02-24 23:37:20
|
Update of /cvsroot/linux-vax/kernel-2.5/drivers/scsi In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv652/drivers/scsi Modified Files: NCR5380.c Log Message: Fix delayed work queuing code. Fix locking problem caused by indirectly calling NCR5380_proc_info() from NCR5380_abort() Index: NCR5380.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/drivers/scsi/NCR5380.c,v retrieving revision 1.1.1.21 retrieving revision 1.7 diff -u -d -r1.1.1.21 -r1.7 --- NCR5380.c 16 Nov 2004 22:31:24 -0000 1.1.1.21 +++ NCR5380.c 24 Feb 2005 23:36:55 -0000 1.7 @@ -28,6 +28,10 @@ /* * $Log$ + * Revision 1.7 2005/02/24 23:36:55 kenn + * Fix delayed work queuing code. Fix locking problem caused by indirectly + * calling NCR5380_proc_info() from NCR5380_abort() + * * Revision 1.1.1.21 2004/11/16 22:31:24 kenn * Import of pristine Linus 2.6.9 tree * @@ -389,6 +393,7 @@ return -ETIMEDOUT; } +#ifdef NDEBUG static struct { unsigned char value; const char *name; @@ -402,7 +407,6 @@ {PHASE_UNKNOWN, "UNKNOWN"} }; -#ifdef NDEBUG static struct { unsigned char mask; const char *name; @@ -577,10 +581,11 @@ static void NCR5380_set_timer(struct NCR5380_hostdata *hostdata, unsigned long timeout) { hostdata->time_expires = jiffies + timeout; - schedule_delayed_work(&hostdata->coroutine, hostdata->time_expires); + schedule_delayed_work(&hostdata->coroutine, timeout); } +#ifdef AUTOPROBE_IRQ static int probe_irq __initdata = 0; /** @@ -656,6 +661,7 @@ return probe_irq; } +#endif /* AUTOPROBE_IRQ */ /** * NCR58380_print_options - show options @@ -715,16 +721,8 @@ static void NCR5380_print_status(struct Scsi_Host *instance) { - static char pr_bfr[512]; - char *start; - int len; - NCR5380_dprint(NDEBUG_ANY, instance); NCR5380_dprint_phase(NDEBUG_ANY, instance); - - len = NCR5380_proc_info(instance, pr_bfr, &start, 0, sizeof(pr_bfr), 0); - pr_bfr[len] = 0; - printk("\n%s\n", pr_bfr); } /******************************************/ @@ -2733,11 +2731,6 @@ NCR5380_print_status(instance); - printk(KERN_WARNING "scsi%d : aborting command\n", instance->host_no); - print_Scsi_Cmnd(cmd); - - NCR5380_print_status(instance); - NCR5380_setup(instance); dprintk(NDEBUG_ABORT, ("scsi%d : abort called\n", instance->host_no)); |