Commit c09f56b8 authored by Artur Molchanov's avatar Artur Molchanov Committed by J. Bruce Fields

net/sunrpc: Fix return value for sysctl sunrpc.transports

Fix returning value for sysctl sunrpc.transports.
Return error code from sysctl proc_handler function proc_do_xprt instead of number of the written bytes.
Otherwise sysctl returns random garbage for this key.

Since v1:
- Handle negative returned value from memory_read_from_buffer as an error
Signed-off-by: default avatarArtur Molchanov <arturmolchanov@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
parent 9f0b5792
...@@ -70,7 +70,13 @@ static int proc_do_xprt(struct ctl_table *table, int write, ...@@ -70,7 +70,13 @@ static int proc_do_xprt(struct ctl_table *table, int write,
return 0; return 0;
} }
len = svc_print_xprts(tmpbuf, sizeof(tmpbuf)); len = svc_print_xprts(tmpbuf, sizeof(tmpbuf));
return memory_read_from_buffer(buffer, *lenp, ppos, tmpbuf, len); *lenp = memory_read_from_buffer(buffer, *lenp, ppos, tmpbuf, len);
if (*lenp < 0) {
*lenp = 0;
return -EINVAL;
}
return 0;
} }
static int static int
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment