diff options
author | Lars Ellenberg <lars.ellenberg@linbit.com> | 2013-03-22 22:17:36 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2013-03-22 22:17:36 -0600 |
commit | cbe5e6109538ddab57764a88d9f0c2accd0c7d48 (patch) | |
tree | e09809862b9be7a44b44aa7367d470da14b2ccf0 /block | |
parent | 779b3fe4c0e9dea19ae3ddef0b5fd1a663b63ee6 (diff) | |
download | linux-stable-cbe5e6109538ddab57764a88d9f0c2accd0c7d48.tar.gz linux-stable-cbe5e6109538ddab57764a88d9f0c2accd0c7d48.tar.bz2 linux-stable-cbe5e6109538ddab57764a88d9f0c2accd0c7d48.zip |
lru_cache: introduce lc_get_cumulative()
New helper to be able to consolidate more updates
into a single transaction.
Without this, we can only grab a single refcount
on an updated element while preparing a transaction.
lc_get_cumulative - like lc_get; also finds to-be-changed elements
@lc: the lru cache to operate on
@enr: the label to look up
Unlike lc_get this also returns the element for @enr, if it is belonging to
a pending transaction, so the return values are like for lc_get(),
plus:
pointer to an element already on the "to_be_changed" list.
In this case, the cache was already marked %LC_DIRTY.
Caller needs to make sure that the pending transaction is completed,
before proceeding to actually use this element.
Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Fixed up by Jens to export lc_get_cumulative().
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions