From: Steve Dickson <SteveD@redhat.com>
To: Jeff Layton <jlayton@redhat.com>
Cc: "Muntz, Daniel" <Dan.Muntz@netapp.com>,
Mike Frysinger <vapier@gentoo.org>,
linux-nfs@vger.kernel.org
Subject: Re: should we make --enable-tirpc the default in current nfs-utils?
Date: Mon, 08 Jun 2009 09:36:31 -0400 [thread overview]
Message-ID: <4A2D13DF.2040105@RedHat.com> (raw)
In-Reply-To: <20090608071026.0b57fff8-PC62bkCOHzGdMjc06nkz3ljfA9RmPOcC@public.gmane.org>
Jeff Layton wrote:
> On Mon, 08 Jun 2009 05:09:36 -0400
> Steve Dickson <SteveD@redhat.com> wrote:
>
>>
>> Jeff Layton wrote:
>>> On Sat, 6 Jun 2009 11:00:41 -0700
>>> "Muntz, Daniel" <Dan.Muntz@netapp.com> wrote:
>>>
>>>>
>>>>
>>>>> -----Original Message-----
>>>>> From: Jeff Layton [mailto:jlayton@redhat.com]
>>>>> Sent: Saturday, June 06, 2009 4:12 AM
>>>>> To: Mike Frysinger
>>>>> Cc: linux-nfs@vger.kernel.org
>>>>> Subject: Re: should we make --enable-tirpc the default in
>>>>> current nfs-utils?
>>>>>
>>>>> On Fri, 5 Jun 2009 16:50:41 -0400
>>>>> Mike Frysinger <vapier@gentoo.org> wrote:
>>>>>
>>>>>> On Friday 05 June 2009 13:36:34 Jeff Layton wrote:
>>>>>>> On Fri, 5 Jun 2009 12:24:39 -0400 Mike Frysinger wrote:
>>>>>>>> On Friday 05 June 2009 07:36:48 Jeff Layton wrote:
>>>>>>>>> Doing this now would add wider testing exposure for these
>>>>>>>>> codepaths and help flush out bugs in TIRPC+IPV4
>>>>> codepaths. OTOH,
>>>>>>>>> it means adding a new library dependency for packagers, or
>>>>>>>>> they'll need to take the conscious step to
>>>>> --disable-tirpc when they configure.
>>>>>>>> or have the configure script dump a warning whenever
>>>>> libtirpc is
>>>>>>>> not used ...
>>>>>>> The problem there is that these sorts of warnings tend to
>>>>> get lost
>>>>>>> in the noise. So then you have the situation where people aren't
>>>>>>> sure whether they built against libtirpc or not. Only running ldd
>>>>>>> against the binaries will tell you.
>>>>>> the configure script knows whether it's going to be
>>>>> building against libtirpc.
>>>>>> it isnt going to happen randomly during `make`.
>>>>>> AC_MSG_WARNING([
>>>>>>
>>>>>> You really should think about switching to libtirpc
>>>>>>
>>>>>> ])
>>>>>>
>>>>>> maybe it's different in Gentoo, but people report configure
>>>>> warnings
>>>>>> all the time ;)
>>>>>>
>>>>> Well, Gentoo probably has a larger percentage of people
>>>>> compiling the sources. Other distros generally distribute the
>>>>> binaries. But to be fair, it's not unreasonable to expect
>>>>> people who are compiling from sources to know what they're doing.
>>>>>
>>>>>>>>> We could make it so that configure looks for libtirpc and if
>>>>>>>>> it's not available, configures the build against legacy RPC
>>>>>>>>> interfaces. I think this is a bad idea however. While
>>>>> it should
>>>>>>>>> "just work" either way, there are some small behavioral
>>>>>>>>> differences when TIRPC support is built in. I think it's
>>>>>>>>> probably better to make enabling and disabling TIRPC
>>>>> a conscious step.
>>>>>>>> i think this is the correct behavior for unspecified configure
>>>>>>>> flags
>>>>>>> In general, yes. In this case though I think it's reasonable to
>>>>>>> force people compiling the package without tirpc
>>>>> installed to take
>>>>>>> the conscious step to either install the right libs and
>>>>> headers, or
>>>>>>> to add --disable-tirpc.
>>>>>>>
>>>>>>> I think doing so will lead to a more deterministic
>>>>> outcome in this
>>>>>>> situation. If that's a problem however, I'm willing to
>>>>> listen to the
>>>>>>> reasoning and reconsider...
>>>>>> i just dont agree with having to re-run configure to "fix"
>>>>> a condition
>>>>>> that the configure script should already be able to handle.
>>>>> but i'm
>>>>>> speaking in general terms here, not specific to what you propose as
>>>>>> that isnt exactly the same thing. i dont feel too strongly here,
>>>>>> especially since it doesnt affect me in any realistic way.
>>>>>> -mike
>>>>> Ok, fair enough. I don't feel terribly strongly about this
>>>>> either and that is the the conventional way that configure
>>>>> options work (don't fail unless absolutely necessary). I'll
>>>>> see about coding up a patch that makes --enable-tirpc the
>>>>> default but falls back to legacy RPC code with a warning if
>>>>> TIRPC libs/headers aren't present.
>>>> Changing the default because the code isn't sufficiently tested strikes
>>>> me as a particularly bad idea. If Red Hat wants more testing,
>>>> distribute nfs-utils with TIRPC enabled in Fedora, and _then_ change the
>>>> default in nfs-utils after more testing has occurred. Delegating
>>>> testing to unsuspecting end-users (especially people who need to rebuild
>>>> in production environments) seems like an ideal way to cause real
>>>> problems.
>>>>
>>> If users have TIRPC installed on their systems, why would we want to
>>> avoid using it? Pieces of this code (mount.nfs, for instance) are
>>> pretty much complete and working. There's no real reason to build these
>>> apps against legacy RPC now if we can help it.
>>>
>>>> And ffs, don't change the existing configure behavior. When nfs-utils
>>>> is supposed to build with TIRPC (e.g., when TIRPC is the default), the
>>>> configure should fail if TIRPC isn't installed. Perhaps the error
>>>> message on failure could suggest running configure with --disable-tirpc.
>>>>
>>> nfs-utils is already builds with TIRPC. It also builds with legacy RPC.
>>> So in this discussion the first question is, "Is there some reason to
>>> not build against TIRPC when it's available on the machine?"
>>>
>>> Second question: "Should make configure bail out when TIRPC isn't
>>> available and force the user to specify --disable-tirpc on the command
>>> line, or should we make the build just fall back to legacy RPC when the
>>> right TIRPC libs/headers aren't present?"
>>>
>>> So far, I'm leaning toward "No" on the first question and to
>>> "automatically fall back" on the second question.
>> I concur on this approach... but would like to change the flavour a bit
>> Meaning.. Lets take out any and all references to TIRPC and replace
>> them with IPv6 support, since, ultimately, that's what were are talking
>> about...
>>
>> So, if libtirpc exists, there will be IPv6 support. If not, there will
>> not be IPv6 support...
>>
>
> Yes, eventually we'll want to make IPv6 support default to "on" when
> TIRPC is present. If you look at the code though, there are #ifdef's
> for HAVE_LIBTIRPC and IPV6_SUPPORTED. These are currently controlled by
> separate configure options, but you cannot build in IPv6 support
> without TIRPC.
>
> In the interest of phasing in this support slowly, Chuck and I are
> proposing that we enable TIRPC by default now, and keep IPv6 support a
> separate option for the time being. Eventually, we'll want to turn on
> IPv6 support automatically when TIRPC is available. I think it makes
> sense though to wait until we have some experience with TIRPC support
> in nfs-utils before we go all the way with turning on IPv6 support by
> default.
>
Is there *any* IPv6 code working at all? We can always call the
support "experimental" until you guys are done...
I guess I just don't see why there has to be two switches for
this feature...
steved.
next prev parent reply other threads:[~2009-06-08 13:39 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-05 11:36 should we make --enable-tirpc the default in current nfs-utils? Jeff Layton
[not found] ` <20090605073648.5a5497b5-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-05 16:10 ` J. Bruce Fields
2009-06-05 16:14 ` Chuck Lever
2009-06-05 16:38 ` J. Bruce Fields
2009-06-05 17:30 ` Chuck Lever
2009-06-05 18:14 ` Steve Dickson
2009-06-05 16:24 ` Mike Frysinger
2009-06-05 17:36 ` Jeff Layton
[not found] ` <20090605133634.23357e8e-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-05 20:50 ` Mike Frysinger
2009-06-06 11:11 ` Jeff Layton
[not found] ` <20090606071153.164d92dd-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-06 18:00 ` Muntz, Daniel
[not found] ` <7A24DF798E223B4C9864E8F92E8C93EC031D19D3-hX7t0kiaRRpT+ZUat5FNkAK/GNPrWCqfQQ4Iyu8u01E@public.gmane.org>
2009-06-06 20:02 ` Jeff Layton
[not found] ` <20090606160230.247d3ca3-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-08 9:09 ` Steve Dickson
[not found] ` <4A2CD550.4090609-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-06-08 11:10 ` Jeff Layton
[not found] ` <20090608071026.0b57fff8-PC62bkCOHzGdMjc06nkz3ljfA9RmPOcC@public.gmane.org>
2009-06-08 13:36 ` Steve Dickson [this message]
[not found] ` <4A2D13DF.2040105-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-06-08 14:26 ` Chuck Lever
2009-06-08 15:04 ` Steve Dickson
[not found] ` <4A2D2862.3090303-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-06-08 15:24 ` Chuck Lever
2009-06-08 16:41 ` Jeff Layton
[not found] ` <20090608124140.3fa02688-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-08 16:50 ` Chuck Lever
2009-06-08 17:00 ` Jeff Layton
[not found] ` <20090608130012.0bea6215-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-08 17:36 ` Chuck Lever
2009-06-09 12:06 ` Steve Dickson
[not found] ` <4A2E503E.1080809-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-06-09 14:30 ` Chuck Lever
2009-06-09 14:48 ` Steve Dickson
[not found] ` <4A2E7646.1030602-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-06-09 15:29 ` Chuck Lever
2009-06-09 15:41 ` Steve Dickson
[not found] ` <4A2E82AD.7070908-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-06-09 17:01 ` Chuck Lever
2009-06-08 14:16 ` Chuck Lever
2009-06-08 14:23 ` Mike Frysinger
2009-06-08 15:36 ` Muntz, Daniel
[not found] ` <7A24DF798E223B4C9864E8F92E8C93EC031D1B02-hX7t0kiaRRpT+ZUat5FNkAK/GNPrWCqfQQ4Iyu8u01E@public.gmane.org>
2009-06-08 16:49 ` Jeff Layton
[not found] ` <20090608124913.7340074c-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-09 12:58 ` Steve Dickson
2009-06-08 15:46 ` Muntz, Daniel
[not found] ` <7A24DF798E223B4C9864E8F92E8C93EC031D1B12-hX7t0kiaRRpT+ZUat5FNkAK/GNPrWCqfQQ4Iyu8u01E@public.gmane.org>
2009-06-08 16:59 ` Jeff Layton
[not found] ` <20090608125957.3c8f0c95-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-08 17:05 ` Chuck Lever
2009-06-08 17:10 ` Jeff Layton
[not found] ` <20090608131024.6aa0c020-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2009-06-08 17:46 ` Chuck Lever
2009-06-09 12:35 ` Steve Dickson
[not found] ` <4A2E5714.3030502-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-06-09 14:48 ` Chuck Lever
2009-06-09 15:27 ` Steve Dickson
2009-06-08 22:17 ` Muntz, Daniel
[not found] ` <7A24DF798E223B4C9864E8F92E8C93EC031D1EFD-hX7t0kiaRRpT+ZUat5FNkAK/GNPrWCqfQQ4Iyu8u01E@public.gmane.org>
2009-06-08 23:08 ` Jeff Layton
[not found] ` <20090608190825.046355d4-PC62bkCOHzGdMjc06nkz3ljfA9RmPOcC@public.gmane.org>
2009-06-09 1:41 ` Muntz, Daniel
2009-06-09 13:18 ` Steve Dickson
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=4A2D13DF.2040105@RedHat.com \
--to=steved@redhat.com \
--cc=Dan.Muntz@netapp.com \
--cc=jlayton@redhat.com \
--cc=linux-nfs@vger.kernel.org \
--cc=vapier@gentoo.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