From: Theodore Ts'o <tytso@mit.edu>
To: Lukas Czerner <lczerner@redhat.com>
Cc: linux-fsdevel@vger.kernel.org, ceph-devel@vger.kernel.org,
linux-ext4@vger.kernel.org, xfs@oss.sgi.com
Subject: Re: [PATCH 3/4] fs: Remove i_size check from do_fallocate
Date: Sat, 12 Apr 2014 09:59:06 -0400 [thread overview]
Message-ID: <20140412135906.GC13837@thunk.org> (raw)
In-Reply-To: <1397242665-2183-3-git-send-email-lczerner@redhat.com>
On Fri, Apr 11, 2014 at 08:57:44PM +0200, Lukas Czerner wrote:
> Currently in do_fallocate in collapse range case we're checking whether
> offset + len is not bigger than i_size. However there is nothing which
> would prevent i_size from changing so the check is pointless. It should
> be done in the file system itself and the file system needs to make sure
> that i_size is not going to change.
>
> As it is now we can easily crash kernel by having two processes doing
> truncate and fallocate collapse range at the same time. This can be
> reproduced on ext4 and it is theoretically possible on xfs even though I
> was not able to trigger it with this simple test.
>
> This commit removes the check from do_fallocate and adds it to the file
> system.
>
> Signed-off-by: Lukas Czerner <lczerner@redhat.com>
> ---
> fs/ext4/extents.c | 11 +++++++++--
> fs/open.c | 8 --------
> fs/xfs/xfs_file.c | 10 +++++++++-
> 3 files changed, 18 insertions(+), 11 deletions(-)
Looks good to me. Do the xfs folks mind if I carry this in the ext4
tree and push it to Linus shortly after -rc1? If so, please send me
an ack'ed by.
If folks have a strong preference to handle this differently, let me
know.
Cheers,
- Ted
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2014-04-12 13:59 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-11 18:57 [PATCH 1/4] ext4: Remove unnecessary check for APPEND and IMMUTABLE Lukas Czerner
2014-04-11 18:57 ` [PATCH 2/4] fs: Prevent doing FALLOC_FL_ZERO_RANGE on append only file Lukas Czerner
2014-04-11 18:57 ` Lukas Czerner
2014-04-12 13:49 ` Theodore Ts'o
2014-04-12 13:49 ` Theodore Ts'o
2014-04-12 15:19 ` Christoph Hellwig
2014-04-12 15:19 ` Christoph Hellwig
2014-04-15 13:09 ` Lukáš Czerner
2014-04-15 21:36 ` Dave Chinner
2014-04-15 21:36 ` Dave Chinner
2014-04-11 18:57 ` [PATCH 3/4] fs: Remove i_size check from do_fallocate Lukas Czerner
2014-04-12 13:59 ` Theodore Ts'o [this message]
2014-04-13 23:39 ` Dave Chinner
2014-04-13 23:39 ` Dave Chinner
2014-04-12 15:21 ` Christoph Hellwig
2014-04-12 15:21 ` Christoph Hellwig
2014-04-15 13:10 ` Lukáš Czerner
2014-04-15 15:36 ` Theodore Ts'o
2014-04-15 15:36 ` Theodore Ts'o
2014-04-15 16:09 ` Lukáš Czerner
2014-04-15 19:40 ` Theodore Ts'o
2014-04-15 19:57 ` Lukáš Czerner
2014-04-11 18:57 ` [PATCH 4/4] fs: Disallow all fallocate operation on active swapfile Lukas Czerner
2014-04-11 18:57 ` Lukas Czerner
2014-04-12 14:06 ` Theodore Ts'o
2014-04-12 15:22 ` Christoph Hellwig
2014-04-12 15:22 ` Christoph Hellwig
2014-04-15 13:19 ` Lukáš Czerner
2014-04-12 13:48 ` [PATCH 1/4] ext4: Remove unnecessary check for APPEND and IMMUTABLE Theodore Ts'o
2014-04-12 13:48 ` Theodore Ts'o
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140412135906.GC13837@thunk.org \
--to=tytso@mit.edu \
--cc=ceph-devel@vger.kernel.org \
--cc=lczerner@redhat.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=xfs@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.