On May 26, 2012, at 3:57 PM, "Myklebust, Trond" <Trond.Myklebust@xxxxxxxxxx> wrote:
> On Sat, 2012-05-26 at 15:43 -0400, Chuck Lever wrote:
>> On May 26, 2012, at 2:39 PM, Trond Myklebust wrote:
>>
>>> Ensure that we destroy our lease on last unmount
>>
>> So why aren't we using DESTROY_CLIENTID in nfs4_reset_all_state() ?
>
> They are different operations.
>
> In nfs4_reset_all_state we're declaring a client reboot: this means that
> we want the server to release all old state associated with this client
> id on the server because we're trying to establish a new client id.
>
> DESTROY_CLIENTID is there in order to destroy a client id that is no
> longer in use. According to Section 2.4.2 of RFC5661 that means that it
> "cannot be used if there are sessions associated with the client ID, or
> state with an unexpired lease". In fact the server is required to reject
> our DESTROY_CLIENTID call if it thinks we still hold state.
>
> So while we could possibly call DESTROY_CLIENTID after declaring the
> client reboot (but what would be the point?), we can't use it as a
> substitute for doing so in nfs4_reset_all_state...
Thanks, that makes sense to me.
>
> --
> Trond Myklebust
> Linux NFS client maintainer
>
> NetApp
> Trond.Myklebust@xxxxxxxxxx
> www.netapp.com
>
> N�����r��y���b�X��ǧv�^�){.n�+����{���"��^n�r��z���h����&���G���h�(�階�ݢj"���m�����z�ޖ���f���h���~�m�
--
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
[Linux USB Development]
[Linux Media Development]
[Video for Linux]
[Linux NILFS]
[Linux Audio Users]
[Photo]
[Yosemite Info]
[Yosemite Photos]
[POF Sucks]
[Linux Kernel]
[Linux SCSI]
[XFree86]