Module Name: src Committed By: riastradh Date: Tue Apr 21 12:07:31 UTC 2015
Modified Files: src/sys/dev: rndpseudo.c src/sys/kern: kern_rndq.c Log Message: Xor, not ior, to combine bits of binuptime for rnd_counter. To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/sys/dev/rndpseudo.c cvs rdiff -u -r1.68 -r1.69 src/sys/kern/kern_rndq.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/rndpseudo.c diff -u src/sys/dev/rndpseudo.c:1.31 src/sys/dev/rndpseudo.c:1.32 --- src/sys/dev/rndpseudo.c:1.31 Tue Apr 14 12:51:30 2015 +++ src/sys/dev/rndpseudo.c Tue Apr 21 12:07:31 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: rndpseudo.c,v 1.31 2015/04/14 12:51:30 riastradh Exp $ */ +/* $NetBSD: rndpseudo.c,v 1.32 2015/04/21 12:07:31 riastradh Exp $ */ /*- * Copyright (c) 1997-2013 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rndpseudo.c,v 1.31 2015/04/14 12:51:30 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rndpseudo.c,v 1.32 2015/04/21 12:07:31 riastradh Exp $"); #if defined(_KERNEL_OPT) #include "opt_compat_netbsd.h" @@ -168,9 +168,9 @@ rndpseudo_counter(void) binuptime(&bt); ret = bt.sec; - ret |= bt.sec >> 32; - ret |= bt.frac; - ret |= bt.frac >> 32; + ret ^= bt.sec >> 32; + ret ^= bt.frac; + ret ^= bt.frac >> 32; return ret; } Index: src/sys/kern/kern_rndq.c diff -u src/sys/kern/kern_rndq.c:1.68 src/sys/kern/kern_rndq.c:1.69 --- src/sys/kern/kern_rndq.c:1.68 Tue Apr 21 03:53:07 2015 +++ src/sys/kern/kern_rndq.c Tue Apr 21 12:07:31 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_rndq.c,v 1.68 2015/04/21 03:53:07 riastradh Exp $ */ +/* $NetBSD: kern_rndq.c,v 1.69 2015/04/21 12:07:31 riastradh Exp $ */ /*- * Copyright (c) 1997-2013 The NetBSD Foundation, Inc. @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_rndq.c,v 1.68 2015/04/21 03:53:07 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_rndq.c,v 1.69 2015/04/21 12:07:31 riastradh Exp $"); #include <sys/param.h> #include <sys/atomic.h> @@ -216,9 +216,9 @@ rnd_counter(void) binuptime(&bt); ret = bt.sec; - ret |= bt.sec >> 32; - ret |= bt.frac; - ret |= bt.frac >> 32; + ret ^= bt.sec >> 32; + ret ^= bt.frac; + ret ^= bt.frac >> 32; return ret; }