From bf5c2a4e948442f0b2211c53fa1ada3388650e8a Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Tue, 4 Aug 2009 15:22:38 +1000 Subject: [PATCH] --- yaml --- r: 164603 b: refs/heads/master c: 5c4d26390341732a8d614141a4cf4663610a1698 h: refs/heads/master i: 164601: f1a25ebdc534370f011f61870e19eb41b56151dc 164599: 6639ef23c16f9340cfa82f76eb480f57b3346405 v: v3 --- [refs] | 2 +- trunk/net/sunrpc/cache.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 5bb9362e4f48..82331a18c136 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f866a8194f7cbabb9135b98b9ac7d26237b88367 +refs/heads/master: 5c4d26390341732a8d614141a4cf4663610a1698 diff --git a/trunk/net/sunrpc/cache.c b/trunk/net/sunrpc/cache.c index d19c07583f8f..44f45166378a 100644 --- a/trunk/net/sunrpc/cache.c +++ b/trunk/net/sunrpc/cache.c @@ -221,6 +221,7 @@ int cache_check(struct cache_detail *detail, switch (cache_make_upcall(detail, h)) { case -EINVAL: clear_bit(CACHE_PENDING, &h->flags); + cache_revisit_request(h); if (rv == -EAGAIN) { set_bit(CACHE_NEGATIVE, &h->flags); cache_fresh_unlocked(h, detail, @@ -473,8 +474,10 @@ static int cache_clean(void) if (!ch) current_index ++; spin_unlock(&cache_list_lock); - if (ch) + if (ch) { + cache_revisit_request(ch); cache_put(ch, d); + } } else spin_unlock(&cache_list_lock);