[OpenAFS-devel] How can the mem cache possibly not be able to
allocate memory?
Derek Atkins
warlord@MIT.EDU
Thu, 08 Apr 2004 09:35:08 -0400
"chas williams (contractor)" <chas@cmf.nrl.navy.mil> writes:
> well the linux kernel could be placing a limit on memory. i would have
> to guess that afs_osi_Alloc(memCacheBlkSize) is going to using kmalloc()
> instead of vmalloc(). kmalloc() gets its buffer from various pools
> viewable from /proc/slabinfo (in particular the size-NNNN pools). it
> seems like you might be hitting a limit on the number of buffers.
I haven't looked at a recent implementation, but my original
implementation would try kmalloc() and then fall back to vmalloc() if
the former failed. I suspect Transarc kept a similar implementation
but I honestly haven't looked.
> perhaps memcache should be implemented to have it own kmem_cache.
-derek
--
Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
Member, MIT Student Information Processing Board (SIPB)
URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH
warlord@MIT.EDU PGP key available