> On Jan 24, 2017, at 3:23 PM, Trond Myklebust <trondmy@xxxxxxxxxxxxxxx> wrote: > > On Tue, 2017-01-24 at 14:15 -0500, J. Bruce Fields wrote: >> On Tue, Jan 24, 2017 at 02:06:16PM -0500, Chuck Lever wrote: >>> >>>> On Jan 23, 2017, at 11:49 AM, bfields@xxxxxxxxxxxx wrote: >>>> >>>> On Mon, Jan 23, 2017 at 10:01:27AM -0500, Chuck Lever wrote: >>>>> >>>>>> On Jan 22, 2017, at 2:04 PM, Chuck Lever <chuck.lever@oracle. >>>>>> com> wrote: >>>>>> >>>>>> Xuan Qi reports that the Linux NFSv4 client failed to lock a >>>>>> file >>>>>> that was migrated. The steps he observed on the wire: >>>>>> >>>>>> 1. The client sent a LOCK request >>>>>> 2. The server replied NFS4ERR_MOVED >>>>>> 3. The client switched to the destination server >>>>>> 4. The client sent the LOCK request again with a bumped >>>>>> ย lock sequence ID >>>>>> 5. The server rejected the LOCK request with >>>>>> NFS4ERR_BAD_SEQID >>>>> >>>>> The list of steps could be more clear: >>>>> >>>>> 1. The client sent a LOCK request to the source server >>>>> 2. The source server replied NFS4ERR_MOVED >>>>> 3. The client switched to the destination server >>>>> 4. The client sent the same LOCK request to the destination >>>>> ย server with a bumped lock sequence ID >>>>> 5. The destination server rejected the LOCK request with >>>>> ย NFS4ERR_BAD_SEQID >>>>> >>>>> >>>>>> RFC 3530 section 8.1.5 provides a list of NFS errors which do >>>>>> not >>>>>> bump a lock sequence ID. >>>>>> >>>>>> However, RFC 3530 is now obsoleted by RFC 7530. In RFC 7530 >>>>>> section >>>>>> 9.1.7, this list has been updated by the addition of >>>>>> NFS4ERR_MOVED. >>>> >>>> I guess we figured the backwards-incompatible change was OK since >>>> essentially the Solaris server is the first we know of to be >>>> making real >>>> use of NFS4ERR_MOVED? >>>> >>>> And probably it's required for the their implementation because >>>> the old >>>> server no longer has the ability to update the state once it's >>>> reached >>>> the point of returning ERR_MOVED. >>>> >>>> OK, makes sense to me, I think. >>> >>> Hi Bruce- >>> >>> Does this mean you will take this patch, or should >>> I just add your Reviewed-by: ? >> >> I can take it if nobody objects.ย ย Mind if I append the above to the >> changelog?ย ย (Just want to document why we think the apparently >> backwards-incompatible change is OK.) >> > I've already added it to my linux-next branch as a stable patch. This patch alone might not be enough. Our test results show that even with this patch applied, the Linux client still increments the lock sequence ID after NFS4ERR_MOVED. -- Chuck Lever -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html