2 sym53c8xx patches
PATCH 1/1 2 sym53c8xx patches
Gerard,
A while back I sent you two diffs for the sym53c8xx driver, and you OK'ed them, but I haven't seen them turn up in the mainline kernel yet.
I've attached the same patches, against 2.4.8 here.
Let me know if there is any reason NOT to include these.
Tim
Signature · 4 lines
Tim Hockin Systems Software Engineer Sun Microsystems, Cobalt Server Appliances [email protected]
drivers/scsi/sym53c8xx.c +9 -27
@@ -2252,7 +2268,6 @@**---------------------------------------------------------------- */ struct usrcmd user;/* Command from user */ -volatile u_char release_stage;/* Synchronisation stage on release */ /*---------------------------------------------------------------- ** Fields that are used (primarily) for integrity check
@@ -5871,7 +5886,12 @@** start the timeout daemon */ np->lasttime=0 ; -ncr_timeout (np); +#ifdef SCSI_NCR_PCIQ_BROKEN_INTR + np->timer.expires =ktime_get ((HZ +9 )/10 ); +#else + np->timer.expires =ktime_get (SCSI_NCR_TIMER_INTERVAL ); +#endif +add_timer (&np->timer);/* ** use SIMPLE TAG messages by default
@@ -7234,23 +7254,14 @@**========================================================== */ -#ifdef MODULE static int ncr_detach (ncb_p np) { -int i; -printk ("%s: detaching ...\n" ,ncr_name (np));/* ** Stop the ncr_timeout process -** Set release_stage to 1 and wait that ncr_timeout() set it to 2. */ - np->release_stage =1 ; -for (i =50 ; i && np->release_stage !=2 ; i--)MDELAY (100 ); -if (np->release_stage !=2 ) -printk ("%s: the timer seems to be already stopped\n" , -ncr_name (np)); -else np->release_stage =2 ; +del_timer_sync (&np->timer);/* ** Reset NCR chip.
@@ -7280,7 +7291,6 @@return 1 ; } -#endif /*========================================================== **
@@ -8607,23 +8617,11 @@ {u_long thistime =ktime_get (0 ); -/* -** If release process in progress, let's go -** Set the release stage from 1 to 2 to synchronize -** with the release process. -*/ - -if (np->release_stage) { -if (np->release_stage ==1 ) np->release_stage =2 ; -return ; - } -#ifdef SCSI_NCR_PCIQ_BROKEN_INTR - np->timer.expires =ktime_get ((HZ +9 )/10 ); +mod_timer (&np->timer,ktime_get ((HZ +9 )/10 ));#else - np->timer.expires =ktime_get (SCSI_NCR_TIMER_INTERVAL ); +mod_timer (&np->timer,ktime_get (SCSI_NCR_TIMER_INTERVAL ));#endif -add_timer (&np->timer);/* ** If we are resetting the ncr, wait for settle_time before
drivers/scsi/sym53c8xx.c +64 -11
167 lines not on this page · raw message