From: Will Taber <wtaber@us.ibm.com>
To: Brian Long <brilong@cisco.com>
Cc: Christoph Hellwig <hch@infradead.org>,
Jeff Moyer <jmoyer@redhat.com>,
autofs mailing list <autofs@linux.kernel.org>,
Trond Myklebust <trond.myklebust@fys.uio.no>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
Ian Kent <raven@themaw.net>
Subject: Re: [autofs] [RFC PATCH]autofs4: hang and proposed fix
Date: Wed, 07 Dec 2005 12:46:39 -0500 [thread overview]
Message-ID: <43971FFF.2090900@us.ibm.com> (raw)
In-Reply-To: <1133968943.4581.22.camel@brilong-lnx>
Brian Long wrote:
> On Tue, 2005-12-06 at 21:40 +0000, Christoph Hellwig wrote:
>
>>On Tue, Dec 06, 2005 at 04:20:29PM -0500, Jeff Moyer wrote:
>>
>>>hch> No, for current TOT that can't happen. It could happen for older
>>>hch> kernels but nothing is doing it in the tree anymore and if anything
>>>hch> outside is doing it it's fundamentally broken.
>>>
>>>This is a bit unclear to me. What do you mean when you refer to "it" and
>>>"that" above? Oh, and TOT is a TLA I haven't run across before.
>>
>>TOT = top of tree.
>>
>>To rephrease the above: With current mainline the nameidata argument
>>is always valid when ->lookup or ->d_revalidate are called except when
>>the filesystem uses lookup_one_len. lookup_one_len is a helper for fileystem
>>usage that is only valid to be used on the filesystems own trees.
>>
>>
>>>We know that there is at least one out of tree module that calls
>>>lookup_one_len, and ends up in the autofs4 revalidate code without the
>>>valid nameidata structure. In this case, with your patch, wouldn't we
>>>blindly dereference the structure and cause an oops? If so, who is at
>>>fault?
>>
>>This out of tree module is wrong and always has been wrong. Any actual
>>breakage of such a module is expected.
>>
>>Do you happen to know what module that is?
>
>
> I believe the filesystem is IBM Rational's mvfs (multi-version
> filesystem) used in ClearCase. My team is the internal support
> organization at Cisco for Red Hat Enterprise Linux issues and we opened
> the support case with Red Hat about this issue. Our internal ClearCase
> support folks also have a case opened with IBM Rational Tech Support.
> Thank you for clarifying that mvfs is doing the "wrong thing" by calling
> lookup_one_len.
>
> /Brian/
Maybe we are doing "the wrong thing" by calling lookup_one_len on the
autofs but that begs the question of what the right thing would be.
There is no vfs_lookup function that will look up a single component in
a pathname. There may be things we can do in the future so that we
don't have to make this call at all, but that doesn't resolve the
problems you have today.
Likewise one could argue that the vfs layer is broken because it is
inconsistent in its handling of the parent i_sem lock on d_revalidate
calls. While this may be true in some abstract software engineering
sense I have learned enough from this thread already to realize that
there is no easy solution there.
On the assumption that our use of lookup_one_len was appropriate, Ian
has been working on a fix to autofs. I am not particularly interested
in where the change is made. What I have been looking for was a
solution that could then be backported to earlier releases to fix the
problem at hand. Anyway, with this information, is it appropriate for
us to replace our calls to lookup_one_len with calls to path_walk or is
that also forbidden?
Will
next prev parent reply other threads:[~2005-12-07 17:46 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-16 10:17 [RFC PATCH]autofs4: hang and proposed fix Ram Pai
2005-11-16 12:41 ` [autofs] " Ian Kent
2005-11-16 16:50 ` Ram Pai
2005-11-16 22:57 ` Ian Kent
2005-11-17 1:52 ` [autofs] " Ram Pai
2005-11-17 18:50 ` Ian Kent
2005-11-17 19:19 ` William H. Taber
2005-11-17 20:39 ` Ram Pai
2005-11-17 22:31 ` William H. Taber
2005-11-18 14:57 ` Ian Kent
2005-11-18 14:54 ` Ian Kent
2005-11-18 14:44 ` Ian Kent
2005-11-18 15:20 ` William H. Taber
2005-11-18 16:30 ` Ian Kent
2005-11-18 17:12 ` William H. Taber
2005-11-18 18:57 ` Ram Pai
2005-11-18 20:08 ` William H. Taber
2005-11-19 2:52 ` Ian Kent
2005-11-21 16:40 ` William H. Taber
2005-11-22 13:13 ` Ian Kent
2005-11-22 17:48 ` [autofs] " William H. Taber
2005-11-23 14:11 ` Ian Kent
2005-11-23 16:42 ` William H. Taber
2005-11-23 17:52 ` Ian Kent
2005-11-23 18:47 ` William H. Taber
2005-11-19 1:40 ` Ian Kent
2005-11-16 15:22 ` Jeff Moyer
2005-11-16 17:00 ` [autofs] " Ram Pai
2005-11-16 18:25 ` Jeff Moyer
2005-11-16 19:24 ` William H. Taber
2005-11-16 19:51 ` Ram Pai
2005-11-27 10:47 ` Ian Kent
2005-11-28 17:19 ` William H. Taber
2005-11-28 23:12 ` Badari Pulavarty
2005-11-29 14:19 ` Ian Kent
2005-11-29 16:34 ` William H. Taber
2005-11-30 14:02 ` Ian Kent
2005-11-30 16:49 ` Badari Pulavarty
2005-11-30 17:04 ` Trond Myklebust
2005-11-30 21:10 ` William H. Taber
2005-11-29 14:20 ` Ian Kent
2005-11-30 1:16 ` [autofs] " Jeff Moyer
2005-11-30 1:56 ` Trond Myklebust
2005-11-30 4:15 ` Jeff Moyer
2005-11-30 6:14 ` Trond Myklebust
2005-11-30 15:44 ` Ian Kent
2005-11-30 15:53 ` [autofs] " Trond Myklebust
2005-11-30 16:12 ` Ian Kent
2005-11-30 16:27 ` Ian Kent
2005-11-30 16:45 ` [autofs] " Trond Myklebust
2005-11-30 20:32 ` William H. Taber
2005-11-30 20:53 ` Trond Myklebust
2005-11-30 21:30 ` William H. Taber
2005-11-30 22:32 ` Trond Myklebust
2005-12-01 16:27 ` William H. Taber
2005-12-01 12:09 ` Ian Kent
2005-12-01 16:30 ` William H. Taber
2005-12-02 13:49 ` Ian Kent
2005-12-02 14:07 ` Jeff Moyer
2005-12-02 15:21 ` Ian Kent
2005-12-02 16:35 ` [autofs] " Will Taber
2005-12-02 17:11 ` Ian Kent
2005-12-02 15:34 ` Will Taber
2005-12-02 17:29 ` Ian Kent
2005-12-02 18:12 ` Trond Myklebust
2005-12-04 12:56 ` Christoph Hellwig
2005-12-04 12:57 ` Christoph Hellwig
2005-12-04 14:58 ` Ian Kent
2005-12-04 17:17 ` [autofs] " Christoph Hellwig
2005-12-05 14:02 ` Ian Kent
2005-12-06 21:20 ` Jeff Moyer
2005-12-06 21:40 ` Christoph Hellwig
2005-12-06 22:37 ` Jeff Moyer
2005-12-07 14:52 ` Will Taber
2005-12-07 15:18 ` Christoph Hellwig
2005-12-07 15:22 ` Brian Long
2005-12-07 15:25 ` Christoph Hellwig
2005-12-07 17:46 ` Will Taber [this message]
2005-12-08 14:16 ` Ian Kent
2005-12-09 12:12 ` Christoph Hellwig
2005-12-09 13:33 ` John T. Kohl
2005-12-13 18:39 ` Christoph Hellwig
2005-12-04 14:56 ` Ian Kent
2005-12-02 19:04 ` [autofs] " Will Taber
2005-12-04 9:39 ` Ian Kent
2005-12-02 16:04 ` [autofs] " Jeff Moyer
2005-12-02 17:36 ` Ian Kent
2005-12-02 18:33 ` [autofs] " Will Taber
2005-12-04 9:52 ` Ian Kent
2005-12-04 14:54 ` Ian Kent
2005-12-05 15:40 ` Ian Kent
2005-11-30 14:48 ` [autofs] " Ian Kent
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=43971FFF.2090900@us.ibm.com \
--to=wtaber@us.ibm.com \
--cc=autofs@linux.kernel.org \
--cc=brilong@cisco.com \
--cc=hch@infradead.org \
--cc=jmoyer@redhat.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=raven@themaw.net \
--cc=trond.myklebust@fys.uio.no \
/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;
as well as URLs for NNTP newsgroup(s).