On 6/2/06, chas williams - CONTRACTOR <[EMAIL PROTECTED]> wrote:
In message <[EMAIL PROTECTED]>,Jeffrey Hutzelman w
rites:
>I'm not so sure.  Since the OS doesn't actually have creds like we expect,
>we have to cons them up for every filesystem operation (that is, every time
>crget() is called).  That's pretty frequent, and it seems appropriate to
>avoid the overhead of memory allocation every time.

but everytime we dive into crget() we are taking a mutex and grabbing
an entry from the pool.  that's essentially what kmalloc does most of
the time anyway.  you could save a little bit of memory not keeping
track of the same buffers twice.  i suspect empirical testing would
be necessary to decide if there is any perceptable difference.

Does it even acquire a mutex most of the time?  The Linux allocator is
based upon the Solaris slab allocator.  That allocator just disables
preemption and tries to satisfy the allocations out of a cpu-local
slab, only grabbing a mutex if the local allocation fails.  Our
home-grown allocators are going to need major surgery to compete with
such a highly-performant algorithm.

-Tom
_______________________________________________
OpenAFS-devel mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-devel

Reply via email to