client: trim lru after flushing dirty data

Shouldn't matter, but it would be interesting to see if this affects
#1737.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
This commit is contained in:
Sage Weil 2011-12-07 21:16:18 -08:00
parent 1545d03c5a
commit d940d68d63

View File

@ -3302,10 +3302,6 @@ void Client::unmount()
_ll_drop_pins();
// empty lru cache
lru.lru_set_max(0);
trim_cache();
while (unsafe_sync_write > 0) {
ldout(cct, 0) << unsafe_sync_write << " unsafe_sync_writes, waiting" << dendl;
mount_cond.Wait(client_lock);
@ -3336,6 +3332,10 @@ void Client::unmount()
flush_caps();
wait_sync_caps(last_flush_seq);
// empty lru cache
lru.lru_set_max(0);
trim_cache();
while (lru.lru_get_size() > 0 ||
!inode_map.empty()) {
ldout(cct, 2) << "cache still has " << lru.lru_get_size()