Date: Sat, 27 Sep 2003 05:00:26 -0700 (PDT) From: Ian Dowse <iedowse@maths.tcd.ie> To: freebsd-bugs@FreeBSD.org Subject: Re: misc/57104: boot/usb: boot freezes during USB devices detection Message-ID: <200309271200.h8RC0Q1B028026@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR misc/57104; it has been noted by GNATS. From: Ian Dowse <iedowse@maths.tcd.ie> To: freebsd-gnats-submit@FreeBSD.org Cc: Subject: Re: misc/57104: boot/usb: boot freezes during USB devices detection Date: Sat, 27 Sep 2003 12:55:14 +0100 In message <20030923171546.GA365@Psyllobora>, nivit@libero.it writes: >> >Description: >> >> the boot stops during USB devices detection >> [...] > >(Waiting for an official solution), you can solve this problem, >replacing the following files with their old version: > >sys/kern/subr_taskqueue.c (1.3.2.2 -> 1.3.2.1) >sys/sys/taskqueue.h sys.orig/sys/taskqueue.h (1.1.2.3 -> 1.1.2.2) As a followup, the submitter reports that the hang is cured by the following patch. Ian Index: kern_fork.c =================================================================== RCS file: /home/iedowse/CVS/src/sys/kern/kern_fork.c,v retrieving revision 1.72.2.14 diff -u -r1.72.2.14 kern_fork.c --- kern_fork.c 26 Jun 2003 04:15:10 -0000 1.72.2.14 +++ kern_fork.c 26 Sep 2003 08:26:31 -0000 @@ -183,7 +183,7 @@ struct proc *p2, *pptr; uid_t uid; struct proc *newproc; - int ok; + int ok, s; static int curfail = 0, pidchecked = 0; static struct timeval lastfail; struct forklist *ep; @@ -544,10 +544,10 @@ */ microtime(&(p2->p_stats->p_start)); p2->p_acflag = AFORK; - (void) splhigh(); + s = splhigh(); p2->p_stat = SRUN; setrunqueue(p2); - (void) spl0(); + splx(s); /* * Now can be swapped.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200309271200.h8RC0Q1B028026>