From: Frederic Weisbecker <fweisbec@gmail.com>
To: Laurent Riffard <laurent.riffard@free.fr>
Cc: Kernel development list <linux-kernel@vger.kernel.org>,
ReiserFS Mailing List <reiserfs-devel@vger.kernel.org>
Subject: Re: linux-next: reiserfs lockout with xattr ?
Date: Thu, 20 Aug 2009 16:32:09 +0200 [thread overview]
Message-ID: <20090820143207.GB6389@nowhere> (raw)
In-Reply-To: <4A807E3A.8050703@free.fr>
On Mon, Aug 10, 2009 at 10:08:26PM +0200, Laurent Riffard wrote:
> Le 10/08/2009 01:33, Frederic Weisbecker a écrit :
> >
> > Thanks a lot for this report. Reiserfs xattrs are definetly paths I
> > haven't tested deeply.
> >
> > I'm trying to reproduce these issues and will let you know once I get
> > a fix.
> >
> > (Btw, if you're still running this tree, you should update with the
> > latest patch I just pushed, it's a very important fix).
> >
> > Thanks,
> >
> > Frederic.
>
> I tried with your lastest patch (git head is at "kill-the-bkl/reiserfs:
> fix early readdir offset increment"), and the lockout still happens.
>
> ~~
> laurent
Ok, it looks like the last two patches in my tree have introduced a locking
inversion dependency between the reiserfs write lock and mm->mmap_sem.
In filldir, we take the reiserfs lock and we might take mm->mmap_sem if
we fault while copying the dir entry to the user.
In mmap, the mm->mmap_sem is taken before the call to the fs mmap callback
and there we take the reiserfs lock.
Locking inversion: AB - BA
What is really sad here is that I have no choice: I can't take the reiserfs lock
while filling a dir entry to the user.
This part, introduced in the last two patches of the tree optimized a lot
the throughput, and now I have to revert them :-(
prev parent reply other threads:[~2009-08-20 14:32 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-05 18:08 linux-next: reiserfs lockout with xattr ? Laurent Riffard
2009-08-05 21:43 ` Frederic Weisbecker
2009-08-08 0:27 ` Frederic Weisbecker
2009-08-09 9:52 ` Laurent Riffard
2009-08-09 23:33 ` Frederic Weisbecker
2009-08-10 20:08 ` Laurent Riffard
2009-08-20 14:32 ` Frederic Weisbecker [this message]
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=20090820143207.GB6389@nowhere \
--to=fweisbec@gmail.com \
--cc=laurent.riffard@free.fr \
--cc=linux-kernel@vger.kernel.org \
--cc=reiserfs-devel@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