[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201008201416.10679.agruen@suse.de>
Date: Fri, 20 Aug 2010 14:16:09 +0200
From: Andreas Gruenbacher <agruen@...e.de>
To: Eric Paris <eparis@...hat.com>
Cc: Christoph Hellwig <hch@...radead.org>,
Matt Helsley <matthltc@...ibm.com>,
torvalds@...ux-foundation.org, linux-kernel@...r.kernel.org,
viro@...iv.linux.org.uk, akpm@...ux-foundation.org,
Michael Kerrisk <michael.kerrisk@...il.com>,
linux-fsdevel@...r.kernel.org
Subject: Re: [GIT PULL] notification tree: directory events
On Friday 20 August 2010 05:38:17 Eric Paris wrote:
> As to when a listener dies: You have to define 'dies'.
I meant a process that gets killed or simply exits while there are outstanding
perm events. Nothing in the code would wake up the processes blocked on the
perm event; they will simply be stuck forever. (They cannot even be killed
with SIGKILL.)
This is easy to reproduce with a listener that is killed while processing a
perm event: just run the fanotify example [1] with the new -s option and hit
^C while it is sleeping.
Bonus points would be awarded to make a process blocked on a listener killable
with SIGKILL or other lethal signals.
[1] http://git.kernel.org/?p=linux/kernel/git/agruen/fanotify-example.git
The listener will also hang forever in that case; not sure why that is the
case.
I already told you about this before (http://lkml.org/lkml/2010/8/16/349); not
sure why everything needs to repeated multiple times until it sinks in.
> If the process just stops respond it is supposed to lock forever.
I agree.
> I was explicitly ask to remove timeouts (even though I've already been ask
> off list to put them back)
I disagree with putting timeouts back in.
> In Linus' tree there is a race in which both processes (the
> listener and the process doing an action waiting on the listener) can
> deadlock and hang forever. A (much less racy but not right) patch to
> fix this has already been posted.
>
> I have a better version which has worked well for me today which I will
> likely post tomorrow morning after I look over it again. I'd love your
> feedback.
Do you have a pointer to that?
Thanks,
Andreas
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists