On Fri, Mar 27, 2020 at 08:32:05AM -0700, Darrick J. Wong wrote: > On Thu, Mar 26, 2020 at 09:17:01AM -0400, Brian Foster wrote: > > Hi all, > > > > Here's a couple more small fixes that fell out of the auto relog work. > > The dquot issue is actually a deadlock vector if we randomly relog dquot > > buffers (which is only done for test purposes), but I figure we should > > handle dquot buffers similar to how inode buffers are handled. Thoughts, > > reviews, flames appreciated. > > Oops, I missed this one, will review now... > > Do you think there needs to be an explicit testcase for this? Or are > the current generic/{388,475} good enough? I'm pretty sure I've seen > this exact deadlock on them every now and again, so we're probably > covered. > I'm actually not aware of a related upstream deadlock. That doesn't mean there isn't one of course, but the problem I hit was related to the random buffer relogging stuff in the auto relog series. I split these out because xfsaild is intended to be mostly async, so they seemed like a generic fixups.. Brian > --D > > > > Brian > > > > Brian Foster (2): > > xfs: trylock underlying buffer on dquot flush > > xfs: return locked status of inode buffer on xfsaild push > > > > fs/xfs/xfs_dquot.c | 6 +++--- > > fs/xfs/xfs_dquot_item.c | 3 ++- > > fs/xfs/xfs_inode_item.c | 3 ++- > > fs/xfs/xfs_qm.c | 14 +++++++++----- > > 4 files changed, 16 insertions(+), 10 deletions(-) > > > > -- > > 2.21.1 > > >