diff options
| author | Andrew Morton <[email protected]> | 2006-09-30 23:29:29 -0700 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2006-10-01 00:39:33 -0700 |
| commit | bd4c8ce41a2e2f0c5bf54343ab54e8e09faec021 (patch) | |
| tree | e8a7d3cfafbe6ee35672953718ba4223e450d938 /include/linux/debugobjects.h | |
| parent | d025c9db7f31fc0554ce7fb2dfc78d35a77f3487 (diff) | |
[PATCH] invalidate_inode_pages2(): ignore page refcounts
The recent fix to invalidate_inode_pages() (git commit 016eb4a) managed to
unfix invalidate_inode_pages2().
The problem is that various bits of code in the kernel can take transient refs
on pages: the page scanner will do this when inspecting a batch of pages, and
the lru_cache_add() batching pagevecs also hold a ref.
Net result is transient failures in invalidate_inode_pages2(). This affects
NFS directory invalidation (observed) and presumably also block-backed
direct-io (not yet reported).
Fix it by reverting invalidate_inode_pages2() back to the old version which
ignores the page refcounts.
We may come up with something more clever later, but for now we need a 2.6.18
fix for NFS.
Cc: Chuck Lever <[email protected]>
Cc: Nick Piggin <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'include/linux/debugobjects.h')
0 files changed, 0 insertions, 0 deletions