Shrinker fixes for XFS for 2.6.36-rc6
Hi Linus,
The following patches address shrinker lockdep and performance regressions introduced into XFS in 2.6.34 when a shrinker was added at the last moment to address OOM issues with lazy XFS inode reclaim.
The first two patches are the saem as I originally posted to solve the problem for 2.6.34. They did not pass review in time for 2.6.34, and attempts to address said review comments resulted in a bigger, more contentious patchset that has much bigger issues than this patchset. Time has run out and I really don't want to have another kernel released with XFS causing lockdep to trigger the moment memory reclaim starts, so I'm asking if you will accept the original fixes I posted for the problem.
The third patch addresses shrinker inode scanning performance problems raised in recently here:
https://bugzilla.kernel.org/show_bug.cgi?id=16348
Please consider these commits for 2.6.26-rc6.
Cheers,
Dave.
The following changes since commit d0c6f6258478e1dba532bf7c28e2cd6e1047d3a4:
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip (2010-07-19 13:19:32 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev shrinker
Dave Chinner (3):
mm: add context argument to shrinker callback
xfs: convert inode shrinker to per-filesystem contexts
xfs: track AGs with reclaimable inodes in per-ag radix tree
arch/x86/kvm/mmu.c | 2 +- drivers/gpu/drm/i915/i915_gem.c | 2 +- fs/dcache.c | 2 +- fs/gfs2/glock.c | 2 +- fs/gfs2/quota.c | 2 +- fs/gfs2/quota.h | 2 +- fs/inode.c | 2 +- fs/mbcache.c | 5 +- fs/nfs/dir.c | 2 +- fs/nfs/internal.h | 3 +- fs/quota/dquot.c | 2 +- fs/ubifs/shrinker.c | 2 +- fs/ubifs/ubifs.h | 2 +- fs/xfs/linux-2.6/xfs_buf.c | 5 +- fs/xfs/linux-2.6/xfs_super.c | 2 - fs/xfs/linux-2.6/xfs_sync.c | 130 +++++++++++++++++++++++---------------- fs/xfs/linux-2.6/xfs_sync.h | 2 - fs/xfs/linux-2.6/xfs_trace.h | 3 + fs/xfs/quota/xfs_qm.c | 7 ++- fs/xfs/xfs_mount.h | 2 +- include/linux/mm.h | 2 +- mm/vmscan.c | 8 ++- 22 files changed, 111 insertions(+), 80 deletions(-)
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
Quoted 16 lines · Dave Chinner
Hi Linus,
The following patches address shrinker lockdep and performance regressions introduced into XFS in 2.6.34 when a shrinker was added at the last moment to address OOM issues with lazy XFS inode reclaim.
The first two patches are the saem as I originally posted to solve the problem for 2.6.34. They did not pass review in time for 2.6.34, and attempts to address said review comments resulted in a bigger, more contentious patchset that has much bigger issues than this patchset. Time has run out and I really don't want to have another kernel released with XFS causing lockdep to trigger the moment memory reclaim starts, so I'm asking if you will accept the original fixes I posted for the problem.
Quoted 6 lines
The third patch addresses shrinker inode scanning performance problems raised in recently here:
https://bugzilla.kernel.org/show_bug.cgi?id=16348
Please consider these commits for 2.6.26-rc6.
Ijust rebased the series - the shrinker context patch did not pickup the new shrinker in the TTM DRM code for radeon. New pull-request output below.
Cheers,
Dave.
The following changes since commit d0c6f6258478e1dba532bf7c28e2cd6e1047d3a4:
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip (2010-07-19 13:19:32 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev shrinker
Dave Chinner (3):
mm: add context argument to shrinker callback
xfs: convert inode shrinker to per-filesystem contexts
xfs: track AGs with reclaimable inodes in per-ag radix tree
arch/x86/kvm/mmu.c | 2 +- drivers/gpu/drm/i915/i915_gem.c | 2 +- drivers/gpu/drm/ttm/ttm_page_alloc.c | 2 +- fs/dcache.c | 2 +- fs/gfs2/glock.c | 2 +- fs/gfs2/quota.c | 2 +- fs/gfs2/quota.h | 2 +- fs/inode.c | 2 +- fs/mbcache.c | 5 +- fs/nfs/dir.c | 2 +- fs/nfs/internal.h | 3 +- fs/quota/dquot.c | 2 +- fs/ubifs/shrinker.c | 2 +- fs/ubifs/ubifs.h | 2 +- fs/xfs/linux-2.6/xfs_buf.c | 5 +- fs/xfs/linux-2.6/xfs_super.c | 2 - fs/xfs/linux-2.6/xfs_sync.c | 130 ++++++++++++++++++++-------------- fs/xfs/linux-2.6/xfs_sync.h | 2 - fs/xfs/linux-2.6/xfs_trace.h | 3 + fs/xfs/quota/xfs_qm.c | 7 ++- fs/xfs/xfs_mount.h | 2 +- include/linux/mm.h | 2 +- mm/vmscan.c | 8 ++- net/sunrpc/auth.c | 2 +- 24 files changed, 113 insertions(+), 82 deletions(-)
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
Quoted 4 lines · Dave Chinner
Ijust rebased the series - the shrinker context patch did not pickup the new shrinker in the TTM DRM code for radeon. New pull-request output below.
Not good. I already pulled the earlier version yesterday. So a rebased series is useless.
Linus
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
Quoted 8 lines · Linus Torvalds
Quoted 4 lines · Dave Chinner
Ijust rebased the series - the shrinker context patch did not pickup the new shrinker in the TTM DRM code for radeon. New pull-request output below.
Not good. I already pulled the earlier version yesterday. So a rebased series is useless.
OK, I checked your public tree and didn't see it there before I did the rebase. I'll send you a delta patch shortly.
Cheers,
Dave.
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
[GIT PULL] Shrinker conversion fixes
In reply to Linus TorvaldsQuoted 8 lines · Linus Torvalds
Quoted 4 lines · Dave Chinner
Ijust rebased the series - the shrinker context patch did not pickup the new shrinker in the TTM DRM code for radeon. New pull-request output below.
Not good. I already pulled the earlier version yesterday. So a rebased series is useless.
Ok, here's the commit to fix the missing bits.
The following changes since commit f4b23cc2d5dc78ef5acbc529eb1219cc41eb5b96:
Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 (2010-07-20 18:29:25 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/dgc/xfsdev shrinker
Dave Chinner (1):
mm: add context argument to shrinker callback to remaining shrinkers
drivers/gpu/drm/ttm/ttm_page_alloc.c | 2 +- net/sunrpc/auth.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
Cheers,
Dave.
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs