tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: O->A loan



On 12/26/11 18:53, YAMAMOTO Takashi wrote:
hi,

i made read with O->A loaning work for easy cases (ie. no locking difficulty)
on yamt-pagecache branch so that someone interested can benchmark.

YAMAMOTO Takashi

Hello Yamamoto-san
I have run some benchmarks of build.sh -j16 on a 4-core HT amd64 box.
http://linbsd.org/yamt.txt


hi,

On Tue, Nov 29, 2011 at 06:38:27AM +0000, YAMAMOTO Takashi wrote:
O->A loaned pages installed on the user address space would have a different
owner than the usual map->entry.uvm_obj.
although it was not a problem when you wrote this patch, at least some
non-mechanical changes would be required after the recent locking
changes in this area.  namely, uvm_map_lock_entry etc now assumes that
any pages mapped in a map entry belong to either the entry's amap or
underlying object.
ok, I didn't think it would be entirely mechanical.  :-)

what if the O->A loan code also changed the entry's uvm_obj to be the vnode
that the pages really belong to?  if the loan range in the amap is fully
populated (which it is in this context) then that shouldn't affect the
logical contents of the entry, it would just cause anyone locking the entry
to also lock the vnode.  if the range of the loan is smaller than the
range of the entry, we could split the entry.  do you think that would work?
it might work, but i have some concerns:
- entry fragmentation
- the extra uobj reference keeps the file even after unlink

YAMAMOTO Takashi

-Chuck



Home | Main Index | Thread Index | Old Index