From: Olga Kornievskaia <aglo@citi.umich.edu>
To: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: "J. Bruce Fields" <bfields@fieldses.org>,
Jeff Layton <jlayton@redhat.com>,
kwc@citi.umich.edu, linux-nfs@vger.kernel.org
Subject: Re: [RFC] new client gssd upcall
Date: Thu, 19 Jun 2008 11:37:17 -0400 [thread overview]
Message-ID: <485A7D2D.4060206@citi.umich.edu> (raw)
In-Reply-To: <1213739969.7288.90.camel@localhost>
Trond Myklebust wrote:
> On Tue, 2008-06-17 at 17:36 -0400, J. Bruce Fields wrote:
>
>> On Mon, Jun 16, 2008 at 10:28:59AM -0400, Jeff Layton wrote:
>>
>>> On Fri, 13 Jun 2008 18:50:37 -0400
>>> "J. Bruce Fields" <bfields@citi.umich.edu> wrote:
>>>
>>>
>>>> The client needs a new more estensible text-based upcall to gssd, to
>>>> make it easier to support some features that are needed for new krb5
>>>> enctypes, for callbacks, etc.
>>>>
>>>> We will have to continue to support the old upcall for backwards
>>>> compatibility with older gssd's. To simplify upgrades, as well as
>>>> testing and debugging, it would help if we can upgrade gssd without
>>>> having to choose at boot (or module-load) time whether we want the new
>>>> or the old upcall.
>>>>
>>>> That means that when gssd opens an rpc upcall pipe, we'd like to just
>>>> start using whichever version it chose immediately--ideally without
>>>> having to wait the 30 seconds that it would normally take for upcalls
>>>> already queued on the wrong upcall pipe to time out.
>>>>
>>>> The following patches do that by queueing the upcalls on whichever of
>>>> the two upcall pipes (the new one and the old one) that somebody holds
>>>> open. If nobody's opened anything yet, then upcalls are provisionally
>>>> queued on the new pipe. I add a pipe_open method to allow the gss code
>>>> to keep track of which pipe is open, to prevent anyone from attempting
>>>> to open both pipes at once, and to cancel any upcalls that got queued to
>>>> the wrong pipe.
>>>>
>>>> I did some minimal testing with the old upcall, but haven't tested the
>>>> new upcall yet. (Olga, could you do that?) So this is just an RFC at
>>>> this point.
>>>>
>>>> --b.
>>>>
>>> Has any thought been given to moving all of the rpc_pipefs upcalls to use
>>> the keyctl API that David Howells did? It seems like that would be better
>>> suited to this sort of application than rpc_pipefs...
>>>
>> I haven't looked at it. I've just assumed that since Trond and Kevin
>> have both looked at both API's, then there must be some good reason
>> we're not using it....
>>
>
> Kevin has spent quite some time working on the keyring support, but as
> far as I understand the amount of time he can continue to spend working
> for CITI has recently been heavily reduced...
>
>
I don't think we ever considered replacing NFS's client upcall
mechanism. Why would we scrap a perfectly good implementation that Trond
keeps on improving and making better?
next prev parent reply other threads:[~2008-06-19 15:37 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-13 22:50 [RFC] new client gssd upcall J. Bruce Fields
2008-06-13 22:50 ` [PATCH 1/5] rpc: remove unnecessary assignment J. Bruce Fields
2008-06-13 22:50 ` [PATCH 2/5] rpc: Use separate spinlock for cred locking in auth_gss.c J. Bruce Fields
2008-06-13 22:50 ` [PATCH 3/5] rpc: move in_downcall list to gss code J. Bruce Fields
2008-06-13 22:50 ` [PATCH 4/5] rpc: add an rpc_pipe_open method J. Bruce Fields
2008-06-13 22:50 ` [PATCH 5/5] rpc: add new gssd upcall pipe J. Bruce Fields
2008-06-14 16:07 ` Trond Myklebust
2008-06-14 17:36 ` J. Bruce Fields
2008-11-09 20:46 ` J. Bruce Fields
2008-06-14 16:01 ` [PATCH 3/5] rpc: move in_downcall list to gss code Trond Myklebust
2008-06-14 15:58 ` [PATCH 2/5] rpc: Use separate spinlock for cred locking in auth_gss.c Trond Myklebust
2008-06-14 17:45 ` J. Bruce Fields
2008-06-14 18:16 ` Trond Myklebust
2008-06-17 20:51 ` J. Bruce Fields
2008-06-17 21:34 ` Trond Myklebust
2008-06-17 22:06 ` J. Bruce Fields
2008-11-09 20:46 ` J. Bruce Fields
2008-11-09 21:04 ` text-based gss upcall J. Bruce Fields
2008-11-09 21:04 ` [PATCH 1/9] rpc: remove unnecessary assignment J. Bruce Fields
2008-11-09 21:04 ` [PATCH 2/9] rpc: factor out warning code from gss_pipe_destroy_msg J. Bruce Fields
2008-11-09 21:04 ` [PATCH 3/9] rpc: minor gss_alloc_msg cleanup J. Bruce Fields
2008-11-09 21:04 ` [PATCH 4/9] rpc: add an rpc_pipe_open method J. Bruce Fields
2008-11-09 21:04 ` [PATCH 5/9] rpc: call release_pipe only on last close J. Bruce Fields
2008-11-09 21:04 ` [PATCH 6/9] rpc: track number of users of the gss upcall pipe J. Bruce Fields
2008-11-09 21:04 ` [PATCH 7/9] rpc: use count of pipe openers to wait for first open J. Bruce Fields
2008-11-09 21:04 ` [PATCH 8/9] rpc: store pointer to pipe inode in gss upcall message J. Bruce Fields
2008-11-09 21:04 ` [PATCH 9/9] rpc: implement new upcall J. Bruce Fields
2008-11-10 19:11 ` [PATCH 5/9] rpc: call release_pipe only on last close Trond Myklebust
[not found] ` <1226344297.7599.41.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-11-10 19:49 ` J. Bruce Fields
2008-11-10 20:01 ` Trond Myklebust
[not found] ` <1226347279.7599.47.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-11-10 20:07 ` J. Bruce Fields
2008-11-10 20:11 ` Trond Myklebust
[not found] ` <1226347898.7599.49.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-11-10 20:17 ` J. Bruce Fields
2008-11-10 20:21 ` Trond Myklebust
[not found] ` <1226348515.7599.52.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-11-10 20:26 ` J. Bruce Fields
2008-11-10 20:37 ` J. Bruce Fields
2008-11-10 21:18 ` Trond Myklebust
[not found] ` <1226351883.7599.103.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-11-10 21:27 ` J. Bruce Fields
2008-11-10 20:35 ` [PATCH 4/9] rpc: add an rpc_pipe_open method Trond Myklebust
[not found] ` <1226349322.7599.59.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-11-10 20:37 ` J. Bruce Fields
2008-11-10 21:18 ` J. Bruce Fields
2008-11-10 21:48 ` Trond Myklebust
[not found] ` <1226353722.7599.105.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-11-10 21:56 ` J. Bruce Fields
2008-06-16 14:28 ` [RFC] new client gssd upcall Jeff Layton
[not found] ` <20080616102859.66fa6a34-RtJpwOs3+0O+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2008-06-17 21:36 ` J. Bruce Fields
2008-06-17 21:59 ` Trond Myklebust
2008-06-17 22:09 ` J. Bruce Fields
2008-06-18 11:51 ` Jeff Layton
2008-06-19 15:37 ` Olga Kornievskaia [this message]
2008-06-19 15:49 ` Jeff Layton
[not found] ` <20080619114929.5c211ec9-RtJpwOs3+0O+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2008-06-19 17:06 ` Trond Myklebust
2008-06-19 17:27 ` Jeff Layton
[not found] ` <20080619132720.6bce2bb9-RtJpwOs3+0O+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2008-06-19 18:13 ` Trond Myklebust
2008-06-19 19:11 ` Jeff Layton
-- strict thread matches above, loose matches on Subject: below --
2008-06-19 15:30 peter honeyman
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=485A7D2D.4060206@citi.umich.edu \
--to=aglo@citi.umich.edu \
--cc=Trond.Myklebust@netapp.com \
--cc=bfields@fieldses.org \
--cc=jlayton@redhat.com \
--cc=kwc@citi.umich.edu \
--cc=linux-nfs@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 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.