HomeFreeBSD

nfscl: Do not use nfso_own for delayed nfsrpc_doclose()

Description

nfscl: Do not use nfso_own for delayed nfsrpc_doclose()

When an initial attempt to close an NFSv4 lock returns NFSERR_DELAY,
the open structure is put on a list for delayed closing. When this
is done, the nfso_own field is set to NULL, so it cannot be used by
nfsrpc_doclose().

Without this patch, the NFSv4 client can crash when a NFSv4 server
replies NFSERR_DELAY to a Close operation. Fortunately, most extant
NFSv4 servers do not do this. This patch avoids the crash for any
that do return NFSERR_DELAY for Close.

Found during a IETF bakeathon testing event this week.

MFC after: 5 days

Details

Provenance
rmacklemAuthored on Fri, Apr 26, 3:58 AM
Parents
rGf0e59ecff85d: CTL: READ(6) should be allowed on CD devices
Branches
Unknown
Tags
Unknown