diff options
-rw-r--r-- | net/sunrpc/svc_xprt.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/sunrpc/svc_xprt.c b/net/sunrpc/svc_xprt.c index 73d40bd1839a..c69358b3cf7f 100644 --- a/net/sunrpc/svc_xprt.c +++ b/net/sunrpc/svc_xprt.c | |||
@@ -220,9 +220,11 @@ static struct svc_xprt *__svc_xpo_create(struct svc_xprt_class *xcl, | |||
220 | */ | 220 | */ |
221 | static void svc_xprt_received(struct svc_xprt *xprt) | 221 | static void svc_xprt_received(struct svc_xprt *xprt) |
222 | { | 222 | { |
223 | WARN_ON_ONCE(!test_bit(XPT_BUSY, &xprt->xpt_flags)); | 223 | if (!test_bit(XPT_BUSY, &xprt->xpt_flags)) { |
224 | if (!test_bit(XPT_BUSY, &xprt->xpt_flags)) | 224 | WARN_ONCE(1, "xprt=0x%p already busy!", xprt); |
225 | return; | 225 | return; |
226 | } | ||
227 | |||
226 | /* As soon as we clear busy, the xprt could be closed and | 228 | /* As soon as we clear busy, the xprt could be closed and |
227 | * 'put', so we need a reference to call svc_xprt_do_enqueue with: | 229 | * 'put', so we need a reference to call svc_xprt_do_enqueue with: |
228 | */ | 230 | */ |