Re: [nfs-utils PATCH] exports: Fix referrals when --enable-junction=no

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Dec 3, 2024, at 11:02 AM, Steve Dickson <steved@xxxxxxxxxx> wrote:
> 
> Hey!
> 
> On 12/3/24 9:28 AM, Chuck Lever III wrote:
>>> On Dec 2, 2024, at 10:19 PM, Steve Dickson <SteveD@xxxxxxxxxx> wrote:
>>> 
>>> Hey,
>>> 
>>> On 12/2/24 3:30 PM, Scott Mayhew wrote:
>>>> Commit 15dc0bea ("exportd: Moved cache upcalls routines into
>>>> libexport.a") caused write_fsloc() to be elided when junction support is
>>>> disabled.  Get rid of the bogus #ifdef HAVE_JUNCTION_SUPPORT blocks so
>>>> that referrals work again (the only #ifdef HAVE_JUNCTION_SUPPORT should
>>>> be around actual junction code).
>>> Why not just take the enable_junction config variable
>>> out of configure.ac as well?
>> It's not generally good practice, but I will break up your
>> sentence below to reply to each bit. There is something to
>> unpack in each part.
> I agree not being a good practice... But sometimes
> config switches out live their usefulness...
> Basically that's what I was thinking

Sometimes. But --enable-junctions is not there yet.


>>> If we want junctions/referrals (which are the same)
>>> IMHO...
>> Junctions and refer= are related, but they aren't
>> the same. As Scott demonstrated, a junction is a file
>> system object that stores NFSv4 referral information.
>> The "refer=" export option stores that information in
>> /etc/exports.
> Is there a point to have both ways?

"refer=" is the classic way of doing this, but was added
only as an experiment, back in the day.

I added junction support as part of the FedFS effort, a
decade ago. At that time, we decided that junctions,
via the nfsref command, would be the "one way".

We have to wait for distros to pick up junction support
before deprecating "refer=" because there are still
active users of "refer=". Debian stable is one of the
distros that is blocking the complete deprecation of
"refer=".

We also want a better mechanism for kernel/user space
interaction to enable full support for IPv6 addresses
and alternate ports in referrals.

So, work in progress. We want to have "one way" but
there are always some road blocks that make it slower
than just toggling a switch.


--
Chuck Lever






[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux