diff mbox

[02/25] SUNRPC: remove BUG_ON from rpc_bind_new_program

Message ID 1351003429-18887-3-git-send-email-dros@netapp.com (mailing list archive)
State New, archived
Headers show

Commit Message

Weston Andros Adamson Oct. 23, 2012, 2:43 p.m. UTC
Instead of calling BUG_ON when rpc_bind_new_program gets an invalid
rpc program version, print a KERN_ERR message and return -EINVAL.

Signed-off-by: Weston Andros Adamson <dros@netapp.com>
---
 net/sunrpc/clnt.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c
index abb7f5e..eacdb15 100644
--- a/net/sunrpc/clnt.c
+++ b/net/sunrpc/clnt.c
@@ -700,7 +700,11 @@  struct rpc_clnt *rpc_bind_new_program(struct rpc_clnt *old,
 	const struct rpc_version *version;
 	int err;
 
-	BUG_ON(vers >= program->nrvers || !program->version[vers]);
+	if (vers >= program->nrvers || !program->version[vers]) {
+		pr_err("RPC: invalid program version %u for program %s\n",
+			vers, program->name);
+		return ERR_PTR(-EINVAL);
+	}
 	version = program->version[vers];
 	clnt = rpc_clone_client(old);
 	if (IS_ERR(clnt))