#8024 NORM 8.2.1: Browse and Firefox hang on startup until cursor is exercised.

Zarro Boogs per Child bugtracker at laptop.org
Fri Sep 26 17:05:48 EDT 2008


#8024: Browse and Firefox hang on startup until cursor is exercised.
------------------------+---------------------------------------------------
   Reporter:  tomeu     |       Owner:  cscott                           
       Type:  defect    |      Status:  new                              
   Priority:  normal    |   Milestone:  8.2.1                            
  Component:  kernel    |     Version:  Development build as of this date
 Resolution:            |    Keywords:                                   
Next_action:  diagnose  |    Verified:  0                                
  Blockedby:  8089      |    Blocking:                                   
------------------------+---------------------------------------------------

Comment(by gnu):

 The problem is that the 1024 bytes of shiny random goodness that we dump
 into the pool as documented above by cscott, DO NOT UPDATE THE ENTROPY
 ESTIMATE.  Anyone can dump data into /dev/random or /dev/urandom, but
 though this stirs the pool, it doesn't change the kernel's estimate of how
 much entropy is in the pool (because /dev/random has no idea whether the
 data you're feeding it is random or carefully crafted).

 The Linux random number design *disconnects* the hardware randomness
 sources from the kernel's /dev/random, and requires a daemon to
 periodically grab some hardware randomness, test it for statistical
 properties, and push it into /dev/random.  That daemon is rngd from the
 rng-utils package.

 So, the right term fix is to install and run rngd, which is a tiny daemon
 that, if properly configured (with a 0 timeout), should never wake up
 unless entropy needs to be added to the pool.  Its default, unfortunately,
 is to wake up every 60 seconds whether it's needed or not,
 to stir the pool a bit.  You change that with "rngd -t 0".  "top" shows it
 using 1804k virtual, 352k resident while it runs.  There's a commented-out
 line in /etc/rc.sysinit that starts it; that needs to be uncommented, and
 "-t 0" added to its command line.

 A possible short-term fix is to change the ramdisk script to update the
 entropy count as we add the hardware random data.  That's done with a
 RNDADDENTROPY ioctl on /dev/random.  Look in rngd_linux.c in rng-utils for
 the details of its arguments.  Due to the complexity of doing bizarre
 ioctl's from Python, it might be easier to run rngd.

-- 
Ticket URL: <http://dev.laptop.org/ticket/8024#comment:27>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system


More information about the Bugs mailing list