diff options
| author | Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> | 2010-03-22 13:50:19 +0000 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-03-22 09:57:19 -0700 | 
| commit | c3824d21eb653fe7017476724257ccaa8bf3d9e1 (patch) | |
| tree | 1e037cc43b40385ba31b2d7ef24275165c294cf0 /net/rxrpc | |
| parent | 99b437a9257cb6b267bf32adfb7675948dc6d485 (diff) | |
| download | linux-c3824d21eb653fe7017476724257ccaa8bf3d9e1.tar.bz2 | |
rxrpc: Check allocation failure.
alloc_skb() can return NULL.
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'net/rxrpc')
| -rw-r--r-- | net/rxrpc/ar-accept.c | 6 | 
1 files changed, 6 insertions, 0 deletions
| diff --git a/net/rxrpc/ar-accept.c b/net/rxrpc/ar-accept.c index 77228f28fa36..2d744f22a9a1 100644 --- a/net/rxrpc/ar-accept.c +++ b/net/rxrpc/ar-accept.c @@ -88,6 +88,11 @@ static int rxrpc_accept_incoming_call(struct rxrpc_local *local,  	/* get a notification message to send to the server app */  	notification = alloc_skb(0, GFP_NOFS); +	if (!notification) { +		_debug("no memory"); +		ret = -ENOMEM; +		goto error_nofree; +	}  	rxrpc_new_skb(notification);  	notification->mark = RXRPC_SKB_MARK_NEW_CALL; @@ -189,6 +194,7 @@ invalid_service:  	ret = -ECONNREFUSED;  error:  	rxrpc_free_skb(notification); +error_nofree:  	_leave(" = %d", ret);  	return ret;  } |