[Pvfs2-developers] handle ledger
Sam Lang
slang at mcs.anl.gov
Tue Feb 5 19:41:39 EST 2008
Here's the latest with a number of important changes:
* removed all reference to ledger code. The current ledger files are
still in place but never get invoked by the rest of the code.
* added a hash for recently removed handles with an expiration to
prevent reusing handles too quickly. This is mostly a failsafe --
generating a handle value from a 64 bit space isn't going to collide
with any of the recently deleted ones.
* removed all references to handles_available in statfs
* fallback to srand if urandom not supported.
-sam
-------------- next part --------------
A non-text attachment was scrubbed...
Name: noledger.patch
Type: application/octet-stream
Size: 53137 bytes
Desc: not available
Url : http://www.beowulf-underground.org/pipermail/pvfs2-developers/attachments/20080205/a42ddab7/noledger-0001.obj
-------------- next part --------------
On Jan 29, 2008, at 4:41 PM, Pete Wyckoff wrote:
> slang at mcs.anl.gov wrote on Tue, 29 Jan 2008 15:53 -0600:
>> On Jan 29, 2008, at 1:42 PM, Pete Wyckoff wrote:
>>> Yeah. It will just run through the same set of allocated handles,
>>> taking a long time that first time for people with lousy RNGs. Then
>>> it will fall into an unallocated space and continue normally. As
>>> long as there is a configure test for random_r, we can fall back to
>>> lrand48() and friends or even ancient srand/rand. /dev/urandom
>>> test must be at runtime, with graceful fallback to a seed made up of
>>> hostname[0:255] | time() << 29 | coll_id << 63 | ... any other
>>> random stuff you can get your hands on in that routine easily.
>>
>> Not sure hostname is actually useful in this case, since the
>> handles are
>> allocated (and only need to be unique) per-server. Same with the
>> fs_id. I
>> could use process id I suppose...
>>
>> Can I check for /dev/urandom with a runtime check in configure, or
>> are
>> those verboten for cross-compiles?
>
> Verboten unfortunately. Just cause it works on the linux front-end
> doesn't mean it will work on the catamount/bg/whatever odd back end.
> Although I think people only ever run servers on real machines these
> days. But catching open() return values is pretty easy.
>
> -- Pete
>
More information about the Pvfs2-developers
mailing list