Re: kernel BUG at fs/nfsd/nfs4recover.c:534 Oops: invalid opcode: 0000

Chuck Lever
2024-12-27T21:32:18Z

On 12/27/24 1:36 AM, Salvatore Bonaccorso wrote:
> Hi,
>
> On Thu, Dec 26, 2024 at 08:17:45PM +0100, Salvatore Bonaccorso wrote:
>> Hi Chuck, hi all,
>>
>> On Thu, Dec 26, 2024 at 11:33:01AM -0500, Chuck Lever wrote:
>>> On 12/26/24 11:24 AM, Salvatore Bonaccorso wrote:
>>>> Hi Jur,
>>>>
>>>> On Mon, Dec 09, 2024 at 04:50:05PM +0000, Jur van der Burg via Bugspray Bot wrote:
>>>>> Jur van der Burg writes via Kernel.org Bugzilla:
>>>>>
>>>>> I tried kernel 6.10.1 and that one is ok. In the mean time I
>>>>> upgraded nfs-utils from 2.5.1 to 2.8.1 which seems to fix the issue.
>>>>> Sorry for the noise, case closed.
>>>>>
>>>>> View: https://bugzilla.kernel.org/show_bug.cgi?id=219580#c2
>>>>> You can reply to this message to join the discussion.
>>>>
>>>> Are you sure this is solved? I got hit by this today after trying to
>>>> check the report from another Debian user:
>>>>
>>>> https://bugs.debian.org/1091439
>>>> the earlier report was
>>>> https://bugs.debian.org/1087900
>>>>
>>>> Surprisingly I managed to hit this, after:
>>>>
>>>> Doing a fresh Debian installation with Debian unstable, rebooting
>>>> after installation. The running kernel is 6.12.6-1 (but now believe it
>>>> might be hit in any sufficient earlier version):
>>>>
>>>> Notably, in kernel-log I see as well
>>>>
>>>> [ 50.295209] RPC: Registered tcp NFSv4.1 backchannel transport module.
>>>> [ 52.158301] NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
>>>> [ 52.158333] NFSD: Using legacy client tracking operations.
>>>
>>> Hi Salvatore,
>>>
>>> If you no longer provision nfsdcltrack in user space, then you want to
>>> set CONFIG_NFSD_LEGACY_CLIENT_TRACKING to 'N' in your kernel config.
>>
>> Right, while this might not be possible right now in the distribution,
>> to confirm, setting CONFIG_NFSD_LEGACY_CLIENT_TRACKING would resolve
>> the problem. In the distribution I think we would not yet be able to
>> do a hard cut for planned next stable release.
>>
>> Remember, that in Debian we only with the current stable release got
>> again somehow on "track" with nfs-utils code.
>>
>>> Otherwise, Scott Mayhew is the area expert (cc'd).
>>
>> Thanks!
>>
>> I will try to get more narrow down to the versions to see where the
>> problem might be introduced, but if you already have a clue, and know
>> what we might try (e.g. commit revert on top, or patch) I'm happy to
>> test this as well (since now reliably able to trigger it).
>
> Okay so this was maybe obvious for you already but bisecting leads to
> the first bad commit beeing:
>
> 74fd48739d04 ("nfsd: new Kconfig option for legacy client tracking")
>
> The Problem is not present in v6.7 and it is triggerable with
> 74fd48739d04 ("nfsd: new Kconfig option for legacy client tracking")
>
> Most importantly as the switch to defaulting to y was only in later
> versions, explicitly setting CONFIG_NFSD_LEGACY_CLIENT_TRACKING=y.

Hi Salvatore -

I see that Scott recently sent a fix for a similar crash to linux-nfs@ :

https://lore.kernel.org/linux-nfs/032ff3ad487ce63656f95c6cdf3db8543fb0d061.camel@kernel.org/T/#t

--
Chuck Lever