lkml.org 
[lkml]   [2018]   [Feb]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 41/86] nfsd: CLOSE SHOULD return the invalid special stateid for NFSv4.x (x>0)
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Trond Myklebust <trond.myklebust@primarydata.com>


    [ Upstream commit fb500a7cfee7f2f447d2bbf30cb59629feab6ac1 ]

    Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
    Signed-off-by: J. Bruce Fields <bfields@redhat.com>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    fs/nfsd/nfs4state.c | 8 ++++++++
    1 file changed, 8 insertions(+)

    --- a/fs/nfsd/nfs4state.c
    +++ b/fs/nfsd/nfs4state.c
    @@ -63,6 +63,9 @@ static const stateid_t zero_stateid = {
    static const stateid_t currentstateid = {
    .si_generation = 1,
    };
    +static const stateid_t close_stateid = {
    + .si_generation = 0xffffffffU,
    +};

    static u64 current_sessionid = 1;

    @@ -5407,6 +5410,11 @@ nfsd4_close(struct svc_rqst *rqstp, stru
    nfsd4_close_open_stateid(stp);
    mutex_unlock(&stp->st_mutex);

    + /* See RFC5661 sectionm 18.2.4 */
    + if (stp->st_stid.sc_client->cl_minorversion)
    + memcpy(&close->cl_stateid, &close_stateid,
    + sizeof(close->cl_stateid));
    +
    /* put reference from nfs4_preprocess_seqid_op */
    nfs4_put_stid(&stp->st_stid);
    out:

    \
     
     \ /
      Last update: 2018-02-02 18:08    [W:4.306 / U:0.116 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site