diff options
author | Artur Grabowski <art@cvs.openbsd.org> | 2009-04-22 13:12:27 +0000 |
---|---|---|
committer | Artur Grabowski <art@cvs.openbsd.org> | 2009-04-22 13:12:27 +0000 |
commit | 2b4c38eeb2da4295234fff1cb4e7919811fa0946 (patch) | |
tree | 24cfca58ce3cd048af6986fe92ab860c869f2ca8 /sys/xfs | |
parent | 1f955b587e23141831caf776b5680ad485b8de42 (diff) |
Make the interactions in allocating buffers less confusing.
- getnewbuf dies. instead of having getnewbuf, buf_get, buf_stub and
buf_init we now have buf_get that is smaller than some of those
functions were before.
- Instead of allocating anonymous buffers and then freeing them if we
happened to lose the race to the hash, always allocate a buffer knowing
which <vnode, block> it will belong to.
- In cluster read, instead of allocating an anonymous buffer to cover
the whole read and then stubs for every buffer under it, make the
first buffer in the cluster cover the whole range and then shrink it
in the callback.
now, all buffers are always on the correct hash and we always know their
identity.
discussed with many, kettenis@ ok
Diffstat (limited to 'sys/xfs')
0 files changed, 0 insertions, 0 deletions