[PATCH v3 0/2] fix spinlock recursion on xa_lock in xfs_buf_item_push

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

Here is v3 of the spinlock recursion fix, based on Dave's comments here:

http://oss.sgi.com/archives/xfs/2013-02/msg00106.html

Note that I'm testing and posting this for review in parallel, given that v2
had seen several hours of testing with the log force bypassed in aild context.
This implementation removes the trylock log force entirely, so continued testing
will determine whether any regressions crop up and I'll post an update after a
few days.

Brian

v3:
- Patches reordered and revised to:
  1.) Add the race detection in xfs_buf_item_push().
  2.) Remove the log force from xfs_buf_trylock() entirely to fix the recursion
      and rely on xfsaild to issue the log force.
v2:
- Patch 2 is reworked to detect the potential race and defer the log force to
  xfsaild by returning XFS_ITEM_PINNED.

Brian Foster (2):
  xfs: recheck buffer pinned status after push trylock failure
  xfs: remove log force from xfs_buf_trylock()

 fs/xfs/xfs_buf.c      |    2 --
 fs/xfs/xfs_buf_item.c |    9 ++++++++-
 2 files changed, 8 insertions(+), 3 deletions(-)

-- 
1.7.7.6

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs


[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux