Re: 2.6.23-rc2-mm1: rcutorture xtime usage
From: Paul E. McKenney
Date: Fri Aug 10 2007 - 11:12:27 EST
On Thu, Aug 09, 2007 at 07:06:23PM -0700, Andrew Morton wrote:
> On Thu, 9 Aug 2007 19:00:40 -0700 "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx> wrote:
>
> > On Fri, Aug 10, 2007 at 03:31:46AM +0200, Adrian Bunk wrote:
> > > On Thu, Aug 09, 2007 at 01:51:06AM -0700, Andrew Morton wrote:
> > > >...
> > > > Changes since 2.6.23-rc2-mm1:
> > > >...
> > > > +allow-rcutorture-to-handle-synchronize_sched.patch
> > > >...
> > > > 2.6.23 queue
> > > >...
> > >
> > > All drivers were converted to no longer use xtime directly since it
> > > might be quite outdated, but this patch adds a usage of xtime.tv_nsec
> > > as RNG...
> >
> > This code doesn't care if the time is outdated, as it is simply
> > periodically perturbing an RNG, but OK.
> >
> > So, what interface are we supposed to be using instead? I cannot use
> > get_random_bytes() due to locking issues. This is not a cryptographically
> > secure usage, so the perturbation does not need to be extremely high
> > quality.
> >
> > On x86, I would just grab the low-order bits of the TSC, but all of the
> > world is not an x86. ;-)
>
> One used to use sched_clock() for this, then get frowned at. Now we
> have cpu_clock()...
Hmmm... And cpu_clock() is not in 2.6.22, so must appear in some later
release. Which means that the rate of API change in this area is a
bit high, so I should avoid it like the plague. Therefore, I should
look for some other convenient source of entropy.
One convenient source would the per-CPU statistics that rcutorture
maintains. Of course, a given CPU's RNG is nearly in lock-step with
its own statistics, but not with the adjacent CPU's statistics...
I will send a patch.
Thanx, Paul
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/