From: Matthew Wilcox <willy@debian.org>
To: Alex Tomas <bzzz@tmi.comex.ru>
Cc: Andreas Dilger <adilger@clusterfs.com>,
linux-kernel <linux-kernel@vger.kernel.org>,
ext2-devel@lists.sourceforge.net, Andrew Morton <akpm@digeo.com>
Subject: Re: [Ext2-devel] [PATCH] concurrent block allocation for ext2 against 2.5.64
Date: Thu, 13 Mar 2003 19:09:08 +0000 [thread overview]
Message-ID: <20030313190908.GC29631@parcelfarce.linux.theplanet.co.uk> (raw)
In-Reply-To: <m3d6kvhzuu.fsf@lexa.home.net>
On Thu, Mar 13, 2003 at 09:43:05PM +0300, Alex Tomas wrote:
>
> fs/attr.c:
> if (ia_valid & ATTR_SIZE) {
> if (attr->ia_size == inode->i_size) {
> if (ia_valid == ATTR_SIZE)
> goto out; /* we can skip lock_kernel() */
> } else {
> lock_kernel();
> error = vmtruncate(inode, attr->ia_size);
> unlock_kernel();
> if (error)
> goto out;
> }
> }
>
> so, all (!) truncates are serialized
This looks like a bug. It should be safe to delete them. Rationale:
- Documentation/filesystems/Locking says ->truncate is called without the BKL.
- This isn't the only place vmtruncate() is called. Several of the callers
do it without the BKL (eg xfs, cifs).
- vmtruncate() appears to handle its own locking (mapping->i_shared_sem)
Comments?
--
"It's not Hollywood. War is real, war is primarily not about defeat or
victory, it is about death. I've seen thousands and thousands of dead bodies.
Do you think I want to have an academic debate on this subject?" -- Robert Fisk
next prev parent reply other threads:[~2003-03-13 18:58 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-03-13 8:55 [PATCH] concurrent block allocation for ext2 against 2.5.64 Alex Tomas
2003-03-13 9:58 ` Andrew Morton
2003-03-13 19:17 ` Alex Tomas
2003-03-13 22:25 ` Andrew Morton
2003-03-13 23:03 ` Andreas Dilger
2003-03-13 23:10 ` Andrew Morton
2003-03-13 23:03 ` Alex Tomas
2003-03-13 23:25 ` Andrew Morton
2003-03-13 23:56 ` Andreas Dilger
2003-03-14 7:20 ` Alex Tomas
2003-03-14 20:59 ` Andreas Dilger
2003-03-14 21:14 ` Alex Tomas
2003-03-15 4:37 ` William Lee Irwin III
2003-03-15 4:54 ` Andrew Morton
2003-03-15 5:30 ` William Lee Irwin III
2003-03-15 5:43 ` Martin J. Bligh
2003-03-15 5:50 ` William Lee Irwin III
2003-03-15 5:49 ` William Lee Irwin III
2003-03-15 6:20 ` William Lee Irwin III
2003-03-15 6:44 ` Andrew Morton
2003-03-15 7:05 ` William Lee Irwin III
2003-03-15 8:24 ` William Lee Irwin III
2003-03-15 9:47 ` William Lee Irwin III
2003-03-15 11:58 ` William Lee Irwin III
2003-03-15 12:08 ` Andrew Morton
2003-03-15 12:25 ` William Lee Irwin III
2003-03-15 8:16 ` [Ext2-devel] " Alex Tomas
2003-03-15 8:29 ` William Lee Irwin III
2003-03-15 8:32 ` Alex Tomas
2003-03-15 9:23 ` William Lee Irwin III
2003-03-14 18:25 ` Martin J. Bligh
2003-03-14 19:30 ` [Ext2-devel] " Daniel Phillips
2003-03-14 19:55 ` Andrew Morton
2003-03-13 17:39 ` [Ext2-devel] " Andreas Dilger
2003-03-13 18:43 ` Alex Tomas
2003-03-13 19:09 ` Matthew Wilcox [this message]
2003-03-13 19:39 ` Andrew Morton
2003-03-13 19:23 ` Theodore Ts'o
2003-03-13 19:44 ` Andreas Dilger
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=20030313190908.GC29631@parcelfarce.linux.theplanet.co.uk \
--to=willy@debian.org \
--cc=adilger@clusterfs.com \
--cc=akpm@digeo.com \
--cc=bzzz@tmi.comex.ru \
--cc=ext2-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox