nfsd4: make sure set CB_PATH_DOWN sequence flag set
authorJ. Bruce Fields <bfields@redhat.com>
Fri, 9 Mar 2012 22:02:28 +0000 (17:02 -0500)
committerJ. Bruce Fields <bfields@redhat.com>
Fri, 9 Mar 2012 22:05:01 +0000 (17:05 -0500)
Make sure this is set whenever there is no callback channel.

If a client does not set up a callback channel at all, then it will get
this flag set from the very start.  That's OK, it can just ignore the
flag if it doesn't care.  If a client does care, I think it's better to
inform it of the problem as early as possible.

Reported-by: Rick Macklem <rmacklem@uoguelph.ca>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4callback.c

index 6f3ebb48b12fad4532884df525e8942bd3564c90..24b6bcf1e945c3a2254123594661e66e53ce3615 100644 (file)
@@ -986,7 +986,7 @@ static void nfsd4_process_cb_update(struct nfsd4_callback *cb)
 
        err = setup_callback_client(clp, &conn, ses);
        if (err) {
-               warn_no_callback_path(clp, err);
+               nfsd4_mark_cb_down(clp, err);
                return;
        }
        /* Yay, the callback channel's back! Restart any callbacks: */