[PATCH 0/4][SRU][focal:linux] NFSv4.1: Don't rebind to the same source port when reconnecting to the server

Tim Gardner tim.gardner at canonical.com
Wed Nov 23 13:20:28 UTC 2022


On 11/22/22 2:11 PM, Khaled Elmously wrote:
> On 2022-11-22 13:39:10 , Tim Gardner wrote:
>> BugLink: https://bugs.launchpad.net/bugs/1997488
>>
>> SRU Justification
>>
>> Microsoft asked for this backport complaining that,
>> "NFS 4.1 mounts on AKS are reusing the same source port when a reconnect needs to happen".
>>
>> Patches 1-3 are scaffolding in order to provide a clean cherrypick for patch 4.
>> This issue looks applicable to the generic kernel.
>>
>> [Impact]
>>
>> NFSv2, v3 and NFSv4 servers often have duplicate replay caches that look
>> at the source port when deciding whether or not an RPC call is a replay
>> of a previous call. This requires clients to perform strange TCP gymnastics
>> in order to ensure that when they reconnect to the server, they bind
>> to the same source port.
>>
>> NFSv4.1 and NFSv4.2 have sessions that provide proper replay semantics,
>> that do not look at the source port of the connection. This patch therefore
>> ensures they can ignore the rebind requirement.
>>
>> [Where things could go wrong]
>>
>> NFS reconnects may erroneously fail.
>>
>> [Other Info]
>>
>> SF: #00345839
>>
> 
> Would this not cause issues for users that run NFSv < 4.1 who don't have proper replay semantics and still rely on source-port reuse?
> 

Aren't NFS version updates backwards compatible ?

-- 
-----------
Tim Gardner
Canonical, Inc




More information about the kernel-team mailing list