nfsd4: remove unused defer_free argument
authorJ. Bruce Fields <bfields@redhat.com>
Tue, 24 Jun 2014 20:51:12 +0000 (16:51 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Tue, 8 Jul 2014 21:14:25 +0000 (17:14 -0400)
28e05dd8457c "knfsd: nfsd4: represent nfsv4 acl with array instead of
linked list" removed the last user that wanted a custom free function.

Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4xdr.c
fs/nfsd/xdr4.h

index 3d0749633d2b8736711d473f774e66e6fa9242be..13f91cec25c3aba0a8a68c7e36a50c8bf4e331af 100644 (file)
@@ -182,16 +182,14 @@ static int zero_clientid(clientid_t *clid)
 
 /**
  * defer_free - mark an allocation as deferred freed
- * @argp: NFSv4 compound argument structure to be freed with
- * @release: release callback to free @p, typically kfree()
- * @p: pointer to be freed
+ * @argp: NFSv4 compound argument structure
+ * @p: pointer to be freed (with kfree())
  *
  * Marks @p to be freed when processing the compound operation
  * described in @argp finishes.
  */
 static int
-defer_free(struct nfsd4_compoundargs *argp,
-               void (*release)(const void *), void *p)
+defer_free(struct nfsd4_compoundargs *argp, void *p)
 {
        struct tmpbuf *tb;
 
@@ -199,7 +197,6 @@ defer_free(struct nfsd4_compoundargs *argp,
        if (!tb)
                return -ENOMEM;
        tb->buf = p;
-       tb->release = release;
        tb->next = argp->to_free;
        argp->to_free = tb;
        return 0;
@@ -225,7 +222,7 @@ static char *savemem(struct nfsd4_compoundargs *argp, __be32 *p, int nbytes)
                BUG_ON(p != argp->tmpp);
                argp->tmpp = NULL;
        }
-       if (defer_free(argp, kfree, p)) {
+       if (defer_free(argp, p)) {
                kfree(p);
                return NULL;
        } else
@@ -296,7 +293,7 @@ nfsd4_decode_fattr(struct nfsd4_compoundargs *argp, u32 *bmval,
                if (*acl == NULL)
                        return nfserr_jukebox;
 
-               defer_free(argp, kfree, *acl);
+               defer_free(argp, *acl);
 
                (*acl)->naces = nace;
                for (ace = (*acl)->aces; ace < (*acl)->aces + nace; ace++) {
@@ -422,7 +419,7 @@ nfsd4_decode_fattr(struct nfsd4_compoundargs *argp, u32 *bmval,
                if (!label->data)
                        return nfserr_jukebox;
                label->len = dummy32;
-               defer_free(argp, kfree, label->data);
+               defer_free(argp, label->data);
                memcpy(label->data, buf, dummy32);
        }
 #endif
@@ -610,7 +607,7 @@ nfsd4_decode_create(struct nfsd4_compoundargs *argp, struct nfsd4_create *create
                        return nfserr_jukebox;
                memcpy(create->cr_data, p, create->cr_datalen);
                create->cr_data[create->cr_datalen] = '\0';
-               defer_free(argp, kfree, create->cr_data);
+               defer_free(argp, create->cr_data);
                break;
        case NF4BLK:
        case NF4CHR:
@@ -1486,7 +1483,7 @@ nfsd4_decode_test_stateid(struct nfsd4_compoundargs *argp, struct nfsd4_test_sta
                        goto out;
                }
 
-               defer_free(argp, kfree, stateid);
+               defer_free(argp, stateid);
                INIT_LIST_HEAD(&stateid->ts_id_list);
                list_add_tail(&stateid->ts_id_list, &test_stateid->ts_stateid_list);
 
@@ -3972,7 +3969,7 @@ int nfsd4_release_compoundargs(void *rq, __be32 *p, void *resp)
        while (args->to_free) {
                struct tmpbuf *tb = args->to_free;
                args->to_free = tb->next;
-               tb->release(tb->buf);
+               kfree(tb->buf);
                kfree(tb);
        }
        return 1;
index b8bf63a21e3bd9f06174e21dae0c5036dbcc7427..4379cc871607d796ea543911d4a90de37fee836d 100644 (file)
@@ -488,7 +488,6 @@ struct nfsd4_compoundargs {
        __be32 *                        tmpp;
        struct tmpbuf {
                struct tmpbuf *next;
-               void (*release)(const void *);
                void *buf;
        }                               *to_free;