On 08/14/2012 01:44 PM, Eric Blake wrote:
oops, hit send too soon
Use of ldexp() requires -lm on some platforms; use gnulib to
determine
this for our makefile. Also, optimize virRandomInt() for the case
of a power-of-two limit (actually rather common, given that Daniel
has a pending patch to replace virRandomBis(10) with code that will
s/Bis/Bits/
default to virRandomInt(1024) on default SELinux settings).
@@ -135,6 +136,9 @@ double virRandom(void)
*/
uint32_t virRandomInt(uint32_t max)
{
+ if ((max & (max - 1)) == 0)
+ return virRandomBits(ffs(max));
ffs(max)-1
--
Eric Blake eblake(a)redhat.com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org