[PATCH v4 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 v4 of the spinlock recursion fix. The only update is to the comment in
patch 1. These changes have been run through the reproducer over the weekend
without a failure.

I've also run another xfstests run while including the following patch from Dave:

xfs: xfs_bmap_add_attrfork_local is too generic

... due to seeing the same issue Lukas reproduced in test 013 (I saw it in 070 as
well). That problem no longer occurs with this patch included, but I have hit
an error in test 178 that didn't fire in my baseline run. It persists if I revert
back to TOT, so I'm posting this set as is and I'll see if I can trace where that
one came from...

Brian

v4:
- Fix comment in patch 1.
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 |   12 +++++++++++-
 2 files changed, 11 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