diff options
author | Weston Andros Adamson | 2012-10-23 16:43:41 +0200 |
---|---|---|
committer | Trond Myklebust | 2012-11-04 20:43:41 +0100 |
commit | b25cd058f25ea2054351bbe501956002cd8ed4c5 (patch) | |
tree | 85429bb1b4ef052235d981fcbb588a4afa5e3e93 /net/sunrpc/svc.c | |
parent | SUNRPC: remove BUG_ON in svc_xprt_received (diff) | |
download | kernel-qcow2-linux-b25cd058f25ea2054351bbe501956002cd8ed4c5.tar.gz kernel-qcow2-linux-b25cd058f25ea2054351bbe501956002cd8ed4c5.tar.xz kernel-qcow2-linux-b25cd058f25ea2054351bbe501956002cd8ed4c5.zip |
SUNRPC: remove BUG_ONs checking RPCSVC_MAXPAGES
Replace two bounds checking BUG_ON() calls with WARN_ON_ONCE() and resetting
the requested size to RPCSVC_MAXPAGES.
Signed-off-by: Weston Andros Adamson <dros@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc/svc.c')
-rw-r--r-- | net/sunrpc/svc.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c index 664979bee1d2..3bf5a54982ba 100644 --- a/net/sunrpc/svc.c +++ b/net/sunrpc/svc.c @@ -587,7 +587,9 @@ svc_init_buffer(struct svc_rqst *rqstp, unsigned int size, int node) * We assume one is at most one page */ arghi = 0; - BUG_ON(pages > RPCSVC_MAXPAGES); + WARN_ON_ONCE(pages > RPCSVC_MAXPAGES); + if (pages > RPCSVC_MAXPAGES) + pages = RPCSVC_MAXPAGES; while (pages) { struct page *p = alloc_pages_node(node, GFP_KERNEL, 0); if (!p) |