Messages in this thread | | | Date | Tue, 16 Jul 2013 16:50:11 +1000 | From | Dave Chinner <> | Subject | Re: splice vs execve lockdep trace. |
| |
On Tue, Jul 16, 2013 at 07:16:02AM +0100, Al Viro wrote: > On Tue, Jul 16, 2013 at 04:03:51PM +1000, Dave Chinner wrote: > > > I posted patches to fix this i_mutex/i_iolock inversion a couple of > > years ago (july 2011): > > > > https://lkml.org/lkml/2011/7/18/4 > > > > And V2 was posted here and reviewed (aug 2011): > > > > http://xfs.9218.n7.nabble.com/PATCH-0-2-splice-i-mutex-vs-splice-write-deadlock-V2-tt4072.html#none > > Unless I'm misreading the patch, you end up doing file_remove_suid() > without holding i_mutex at all...
+ xfs_rw_ilock(ip, XFS_IOLOCK_EXCL); + ret = file_remove_suid(out);
Actaully, xfs_rw_ilock() takes the i_mutex due to teh exclusive locking ebing done, so that's all fine.
Cheers,
Dave. -- Dave Chinner david@fromorbit.com
| |