Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Sep 2003 04:08:31 -0700 (PDT)
From:      Ian Dowse <iedowse@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/kern kern_fork.c
Message-ID:  <200309281108.h8SB8V3Z038709@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
iedowse     2003/09/28 04:08:31 PDT

  FreeBSD src repository

  Modified files:        (Branch: RELENG_4)
    sys/kern             kern_fork.c 
  Log:
  Save and restore the interrupt mask in fork1() instead of using
  spl0() and hence assuming that the old interrupt mask was zero.
  Although fork1() is normally called with a zero mask, one exception
  to this is when it is called by kthread_create() before configure()
  has unmasked interrupts for the first time. In that case it can
  cause interrupt storm hangs during device configuration, because
  interrupts can be delivered before the corresponding device drivers
  are ready to receive them.
  
  This should fix the boot-time USB hangs that have been reported.
  
  Approved by:    re (murray)
  
  Revision   Changes    Path
  1.72.2.15  +3 -3      src/sys/kern/kern_fork.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200309281108.h8SB8V3Z038709>