Linux NFS development
 help / color / mirror / Atom feed
* sm notify (nlm) question
@ 2024-05-14 20:56 Olga Kornievskaia
  2024-05-14 21:08 ` Chuck Lever III
  0 siblings, 1 reply; 9+ messages in thread
From: Olga Kornievskaia @ 2024-05-14 20:56 UTC (permalink / raw)
  To: linux-nfs

Hi folks,

Given that not everything for NFSv3 has a specification, I post a
question here (as it concerns linux v3 (client) implementation) but I
ask a generic question with respect to NOTIFY sent by an NFS server. A
NOTIFY message that is sent by an NFS server upon reboot has a monitor
name and a state. This "state" is an integer and is modified on each
server reboot. My question is: what about state value uniqueness? Is
there somewhere some notion that this value has to be unique (as in
say a random value).

Here's a problem. Say a client has 2 mounts to ip1 and ip2 (both
representing the same DNS name) and acquires a lock per mount. Now say
each of those servers reboot. Once up they each send a NOTIFY call and
each use a timestamp as basis for their "state" value -- which very
likely is to produce the same value for 2 servers rebooted at the same
time (or for the linux server that looks like a counter). On the
client side, once the client processes the 1st NOTIFY call, it updates
the "state" for the monitor name (ie a client monitors based on a DNS
name which is the same for ip1 and ip2) and then in the current code,
because the 2nd NOTIFY has the same "state" value this NOTIFY call
would be ignored. The linux client would never reclaim the 2nd lock
(but the application obviously would never know it's missing a lock)
--- data corruption.

Who is to blame: is the server not allowed to send "non-unique" state
value? Or is the client at fault here for some reason?

I'd appreciate the feedback.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-05-22 17:19 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-14 20:56 sm notify (nlm) question Olga Kornievskaia
2024-05-14 21:08 ` Chuck Lever III
2024-05-14 21:21   ` Olga Kornievskaia
2024-05-14 21:36   ` Frank Filz
2024-05-14 21:49     ` Olga Kornievskaia
2024-05-14 22:13       ` Frank Filz
2024-05-22 13:57         ` Olga Kornievskaia
2024-05-22 16:20           ` Trond Myklebust
2024-05-22 17:18             ` Tom Talpey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox