Linux file offsets are _signed_ 64-bit quantities, which means that
we can't properly handle lock requests that go beyond the (2^63 - 1)-th
byte, because of sign extension problems. Since NFSv4 calls for 64-bit
locking, this prevents us from being completely protocol-compliant. The
real solution to this problem is to start using unsigned file offsets in
the VFS, but this is a very deep change!
From fs/nfsd/nfs4state.c: