summaryrefslogtreecommitdiffstats
path: root/xlators/nfs/lib/src/rpcsvc.c
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/nfs/lib/src/rpcsvc.c')
-rw-r--r--xlators/nfs/lib/src/rpcsvc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/xlators/nfs/lib/src/rpcsvc.c b/xlators/nfs/lib/src/rpcsvc.c
index da9cb3bc8bb..ff3c1facc18 100644
--- a/xlators/nfs/lib/src/rpcsvc.c
+++ b/xlators/nfs/lib/src/rpcsvc.c
@@ -1987,6 +1987,8 @@ nfs_rpcsvc_handle_rpc_call (rpcsvc_conn_t *conn)
err_reply:
if (ret == RPCSVC_ACTOR_ERROR)
ret = nfs_rpcsvc_error_reply (req);
+ else if (ret == RPCSVC_ACTOR_IGNORE)
+ mem_put (conn->rxpool, req);
/* No need to propagate error beyond this function since the reply
* has now been queued. */
@@ -2297,6 +2299,8 @@ nfs_rpcsvc_record_vectored_call_actor (rpcsvc_conn_t *conn)
err_reply:
if (ret == RPCSVC_ACTOR_ERROR)
ret = nfs_rpcsvc_error_reply (req);
+ else if (ret == RPCSVC_ACTOR_IGNORE)
+ mem_put (conn->rxpool, req);
/* No need to propagate error beyond this function since the reply
* has now been queued. */