xfs
[Top] [All Lists]

Re: [PATCH] xfs: take XFS_IOLOCK_EXCL if suid removal is required

To: Eric Sandeen <sandeen@xxxxxxxxxxx>
Subject: Re: [PATCH] xfs: take XFS_IOLOCK_EXCL if suid removal is required
From: Jan Kara <jack@xxxxxxx>
Date: Thu, 9 Jul 2015 12:17:11 +0200
Cc: Dave Chinner <david@xxxxxxxxxxxxx>, Eric Sandeen <sandeen@xxxxxxxxxx>, xfs-oss <xfs@xxxxxxxxxxx>, Jan Kara <jack@xxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <557EEEAD.8000701@xxxxxxxxxxx>
References: <54F9DBAE.2070002@xxxxxxxxxx> <20150306210927.GA13958@dastard> <557EEEAD.8000701@xxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Mon 15-06-15 10:26:37, Eric Sandeen wrote:
> On 3/6/15 3:09 PM, Dave Chinner wrote:
> > On Fri, Mar 06, 2015 at 10:54:06AM -0600, Eric Sandeen wrote:
> >> This sequence:
> >>
> >> # rm -f sparsefile
> >> # truncate --size=1m sparsefile
> >> # chmod ugo+rws sparsefile
> >> # ls -l sparsefile
> >> -rwSrwSrw-. 1 root root 1048576 Mar  6 10:29 sparsefile
> >> # su tester
> >>
> >> $ xfs_io -d -c "pwrite 0 4096" sparsefile
> >> wrote 4096/4096 bytes at offset 0
> >> 4 KiB, 1 ops; 0.0000 sec (21.505 KiB/sec and 5.3763 ops/sec)
> >> $ exit
> >>
> >> will lead to a WARN_ON() in notify change, because i_mutex is
> >> not held, and we get to notify_change via suid removal with
> >> only XFS_IOLOCK_SHARED held, i.e. no i_mutex.
> >>
> >> Upgrade the lock to XFS_IOLOCK_EXCL in this case.
> >>
> >> Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
> > 
> > I believe Jan Kara has already addressed this problem in
> > this patchset:
> > 
> > http://oss.sgi.com/archives/xfs/2015-03/msg00051.html
> 
> Seems like that patchset never made it anywhere, though, so this
> is still an outstanding problem.  :(

Al just merged the patch set during this merge window. Hurray!

                                                                Honza
-- 
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR

<Prev in Thread] Current Thread [Next in Thread>
  • Re: [PATCH] xfs: take XFS_IOLOCK_EXCL if suid removal is required, Jan Kara <=