Re: NFSv4 referrals broken when not enabling junction support

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

 




> On Dec 2, 2024, at 2:46 PM, Salvatore Bonaccorso <carnil@xxxxxxxxxx> wrote:
> 
> Hi Steve,
> 
> On Mon, Dec 02, 2024 at 01:26:46PM -0500, Steve Dickson wrote:
>> 
>> 
>> On 11/25/24 11:57 PM, Salvatore Bonaccorso wrote:
>>> Hi Steve,
>>> 
>>> On Sat, Oct 26, 2024 at 09:04:01AM -0400, Steve Dickson wrote:
>>>> 
>>>> 
>>>> On 10/25/24 4:14 PM, Salvatore Bonaccorso wrote:
>>>>> Hi Steve,
>>>>> 
>>>>> On Sun, Oct 20, 2024 at 04:37:10PM +0200, Salvatore Bonaccorso wrote:
>>>>>> Hi Steve,
>>>>>> 
>>>>>> On Tue, Oct 08, 2024 at 06:12:58AM -0400, Steve Dickson wrote:
>>>>>>> 
>>>>>>> 
>>>>>>> On 10/3/24 12:58 PM, Salvatore Bonaccorso wrote:
>>>>>>>> Hi Steve, hi linux-nfs people,
>>>>>>>> 
>>>>>>>> it got reported twice in Debian that  NFSv4 referrals are broken when
>>>>>>>> junction support is disabled. The two reports are at:
>>>>>>>> 
>>>>>>>> https://bugs.debian.org/1035908
>>>>>>>> https://bugs.debian.org/1083098
>>>>>>>> 
>>>>>>>> While arguably having junction support seems to be the preferred
>>>>>>>> option, the bug (or maybe unintended behaviour) arises when junction
>>>>>>>> support is not enabled (this for instance is the case in the Debian
>>>>>>>> stable/bookworm version, as we cannot simply do such changes in a
>>>>>>>> stable release; note later relases will have it enabled).
>>>>>>>> 
>>>>>>>> The "breakage" seems to be introduced with 15dc0bead10d ("exportd:
>>>>>>>> Moved cache upcalls routines  into libexport.a"), so
>>>>>>>> nfs-utils-2-5-3-rc6 as this will mask behind the #ifdef
>>>>>>>> HAVE_JUNCTION_SUPPORT's code which seems needed to support the refer=
>>>>>>>> in /etc/exports.
>>>>>>>> 
>>>>>>>> I had a quick conversation with Cuck offliste about this, and I can
>>>>>>>> hopefully state with his word, that yes, while nfsref is the direction
>>>>>>>> we want to go, we do not want to actually disable refer= in
>>>>>>>> /etc/exports.
>>>>>>> +1
>>>>>>> 
>>>>>>>> 
>>>>>>>> Steve, what do you think? I'm not sure on the best patch for this,
>>>>>>>> maybe reverting the parts masking behind #ifdef HAVE_JUNCTION_SUPPORT
>>>>>>>> which are touched in 15dc0bead10d would be enough?
>>>>>>> Yeah there is a lot of change with 15dc0bead10d
>>>>>>> 
>>>>>>> Let me look into this... At the up coming Bake-a-ton [1]
>>>>>> 
>>>>>> Thanks a lot for that, looking forward then to a fix which we might
>>>>>> backport in Debian to the older version as well.
>>>>> 
>>>>> Hope the Bake-a-ton was productive :)
>>>>> 
>>>>> Did you had a chance to look at this issue beeing there?
>>>> Yes I did... and we did talk about the problem.... still looking into it.
>>> 
>>> Reviewing the open bugs in Debian I remembered of this one. If you
>>> have already a POC implementation/bugfix available, would it help if I
>>> prod at least the two reporters in Debian to test the changes?
>>> 
>>> Thanks a lot for your work, it is really appreciated!
>> I was not able to reproduce this at the Bakeathon
>> with the latest nfs-utils... and today I took another
>> look today...
>> 
>> Would mind showing me the step that cause the error
>> and what is the error?
> 
> Let me ask the two reporters in Debian, Cc'ed.
> 
> Sam, Anton can you provide here how to reproduce the issue with
> nfs-utils which you reported?
> 
> Context:
> - https://bugs.debian.org/1035908
> - https://bugs.debian.org/1083098

I was able to reproduce this by building nfs-utils
from scratch with the "--disable-junction" configure
option. Install the server-side user space components
from this build.

Then add a "refer=" export option and try to use that
export from a client.


--
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