Re: [PATCH 10/17] CLNT: test resues slot ID

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 02, 2011 at 02:33:09PM +0800, Mi Jinlong wrote:
> Signed-off-by: Mi Jinlong <mijinlong@xxxxxxxxxxxxxx>
> ---
>  nfs4.1/server41tests/st_sequence.py |   18 ++++++++++++++++++
>  1 files changed, 18 insertions(+), 0 deletions(-)
> 
> diff --git a/nfs4.1/server41tests/st_sequence.py b/nfs4.1/server41tests/st_sequence.py
> index 4ea5cab..391fc45 100644
> --- a/nfs4.1/server41tests/st_sequence.py
> +++ b/nfs4.1/server41tests/st_sequence.py
> @@ -363,3 +363,21 @@ def testBadSequenceidAtSlot(t, env):
>  
>      res = c.c.compound([op.sequence(sid, nfs4lib.dec_u32(seqid), 2, 3, True)])
>      check(res, NFS4ERR_SEQ_MISORDERED)
> +
> +def testReuseSlotID(t, env):
> +    """
> +
> +    FLAGS: sequence all
> +    CODE: SEQ14
> +    """

Missing description?

> +    c = env.c1.new_client(env.testname(t))
> +    # CREATE_SESSION
> +    sess1 = c.create_session()
> +
> +    sid = sess1.sessionid 
> +    res = c.c.compound([op.sequence(sid, 1, 2, 3, True), op.putrootfh()])
> +    check(res)
> +
> +    res = c.c.compound([op.sequence(sid, 1, 2, 3, True)])
> +    # should we also check the ERROR of NFS4ERR_SEQ_FALSE_RETRY ??

As I understand it, the server isn't required to recognize false
retries, so I don't think we can check for that.

The only useful thing to check for, I think, is just to send the same
request twice and make sure the requests match.

Actually, best would be to do this with a non-idempotent operation.  For
example, send SEQ+RENAME twice and make sure that both renames succeed.
(Whereas if the server reply cache is broken and the server attempts to
rename the file again, the second rename will fail with NOENT.)

--b.

> +    check(res)
> -- 
> 1.7.4.1
> 
> 
> 
--
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


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux