aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/dcache.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/fs/dcache.c b/fs/dcache.c
index c4d2234eccc3..60df712262c2 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -1473,10 +1473,15 @@ void shrink_dcache_parent(struct dentry *parent)
1473 data.found = 0; 1473 data.found = 0;
1474 1474
1475 d_walk(parent, &data, select_collect); 1475 d_walk(parent, &data, select_collect);
1476
1477 if (!list_empty(&data.dispose)) {
1478 shrink_dentry_list(&data.dispose);
1479 continue;
1480 }
1481
1482 cond_resched();
1476 if (!data.found) 1483 if (!data.found)
1477 break; 1484 break;
1478
1479 shrink_dentry_list(&data.dispose);
1480 } 1485 }
1481} 1486}
1482EXPORT_SYMBOL(shrink_dcache_parent); 1487EXPORT_SYMBOL(shrink_dcache_parent);