Date: Tue, 24 Feb 2015 11:44:31 -0800 From: John-Mark Gurney <jmg@funkthat.com> To: Ian Lepore <ian@freebsd.org> Cc: Konstantin Belousov <kostikbel@gmail.com>, Harrison Grundy <harrison.grundy@astrodoggroup.com>, freebsd-arch@freebsd.org Subject: Re: locks and kernel randomness... Message-ID: <20150224194431.GM46794@funkthat.com> In-Reply-To: <1424804722.3293.12.camel@freebsd.org> References: <20150224012026.GY46794@funkthat.com> <20150224015721.GT74514@kib.kiev.ua> <54EBDC1C.3060007@astrodoggroup.com> <20150224024250.GV74514@kib.kiev.ua> <DD06E2EA-68D6-43D7-AA17-FB230750E55A@bsdimp.com> <20150224174053.GG46794@funkthat.com> <1E4A5E62-6E06-48BA-B5C5-9BD05811CDEF@bsdimp.com> <20150224183051.GJ46794@funkthat.com> <1424804722.3293.12.camel@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Ian Lepore wrote this message on Tue, Feb 24, 2015 at 12:05 -0700: > On Tue, 2015-02-24 at 10:30 -0800, John-Mark Gurney wrote: > > Warner Losh wrote this message on Tue, Feb 24, 2015 at 11:03 -0700: > > > > > > > On Feb 24, 2015, at 10:40 AM, John-Mark Gurney <jmg@funkthat.com> wrote: > > > > > > > > Warner Losh wrote this message on Tue, Feb 24, 2015 at 07:56 -0700: > > > >> Then again, if you want to change random(), provide a weak_random() that???s > > > >> the traditional non-crypto thing that???s fast and lockless. That would make it easy > > > >> to audit in our tree. The scheduler doesn???t need cryptographic randomness, it > > > >> just needs to make different choices sometimes to ensure its notion of fairness. > > > > > > > > I do not support having a weak_random... If the consumer is sure > > > > enough that you don't need a secure random, then they can pick an LCG > > > > and implement it themselves and deal (or not) w/ the locking issues... > > > > > > > > It appears that the scheduler had an LCG but for some reason the authors > > > > didn't feel like using it here.. > > > > > > Why don???t you support having a common random routine that???s to mix the > > > pot, but not cryptographically secure? Lots of algorithms use them, and having > > > a common one would keep us from reinventing the wheel. > > > > Why can't these algorithms use a cryptographically secure RNG instead? > > No one has truely answered that point.. Everyone says they want to use > > an insecure RNG, but the real question is, why can't/shouldn't these > > algorithms use a CSPRNG? > > Because of performance. Not everything needs crypto-strength > randomness. LOL... If you need something that gives you more than 500MB/sec of randomness, using an LCG is the least of your worries, and you need to be implementing you're own anyways... > The problem here is that you are never going to accept the validity of > that statement no matter how many of us complain over and over again > about this kind of thing. You've got some religion that the rest of us Give me examples of code in the tree that needs high performance, low quality randomness, and I will agree with you and provide the interface, but as long as you continue to create strawmen, I won't... The example we've been discussing of the scheduler is called LESS than once a second! OMG! soo many cycles wasted! > don't buy into, and you've got it fervently enough that you'll just keep > saying the same mindless things over and over again until we all get > bored and wander away. Just like you keep mindless saying that people need an LCG because performance, trust us! Performance! Performance! > And freebsd gets a little more bloated and a little slower and a lot > less able to run on anything except the very fastest hardware that was > just released last week. Thanks for "improving" it in that way. Again, give me an example of calling random(9) more than 100 times per second, or testing w/ my patch, and showing more than .01% cpu in random and I'll have an honest discussion about this... But you're speculating on performance issues w/o numbers... -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not."
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150224194431.GM46794>