Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [netbsd-6] src

Module Name:    src
Committed By:   riz
Date:           Fri Apr 20 23:35:20 UTC 2012

Modified Files:
        src/share/man/man4 [netbsd-6]: rnd.4
        src/sys/dev [netbsd-6]: rndpseudo.c
        src/sys/kern [netbsd-6]: kern_rndpool.c kern_rndq.c subr_cprng.c
        src/sys/sys [netbsd-6]: cprng.h rnd.h

Log Message:
Pull up following revision(s) (requested by tls in ticket #190):
        sys/sys/rnd.h: revision 1.31
        sys/sys/rnd.h: revision 1.32
        sys/sys/cprng.h: revision 1.5
        sys/kern/subr_cprng.c: revision 1.8
        share/man/man4/rnd.4: revision 1.19
        sys/kern/kern_rndq.c: revision 1.3
        sys/dev/rndpseudo.c: revision 1.8
        sys/dev/rndpseudo.c: revision 1.9
        sys/kern/kern_rndpool.c: revision 1.2
Address multiple problems with rnd(4)/cprng(9):
1) Add a per-cpu CPRNG to handle short reads from /dev/urandom so that
   programs like perl don't drain the entropy pool dry by repeatedly
   opening, reading 4 bytes, closing.
2) Really fix the locking around reseeds and destroys.
3) Fix the opportunistic-reseed strategy so it actually works, reseeding
   existing RNGs once each (as they are used, so idle RNGs don't get
   reseeded) until the pool is half empty or newly full again.
Fix a bug and a compilation problem.  Bug: spin mutexes don't have owners,
so KASSERT(!mutex_owned()) shouldn't be used to assert that the current
LWP does not have the mutex.  Compilation problem: explicitly include
sys/mutex.h from rnd.h so evbarm builds again.

To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.18.2.1 src/share/man/man4/rnd.4
cvs rdiff -u -r1.6.2.1 -r1.6.2.2 src/sys/dev/rndpseudo.c
cvs rdiff -u -r1.1 -r1.1.2.1 src/sys/kern/kern_rndpool.c
cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/kern/kern_rndq.c
cvs rdiff -u -r1.5.2.1 -r1.5.2.2 src/sys/kern/subr_cprng.c
cvs rdiff -u -r1.4 -r1.4.2.1 src/sys/sys/cprng.h
cvs rdiff -u -r1.29.2.1 -r1.29.2.2 src/sys/sys/rnd.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Home | Main Index | Thread Index | Old Index