提交 0e4699e4 编写于 作者: D Dan Carpenter 提交者: David Howells

rxrpc: checking for IS_ERR() instead of NULL

rxrpc_lookup_peer_rcu() and rxrpc_lookup_peer() return NULL on error, never
error pointers, so IS_ERR() can't be used.

Fix three callers of those functions.

Fixes: be6e6707 ('rxrpc: Rework peer object handling to use hash table and RCU')
Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: NDavid Howells <dhowells@redhat.com>
上级 0e9390eb
...@@ -247,8 +247,8 @@ struct rxrpc_transport *rxrpc_name_to_transport(struct rxrpc_sock *rx, ...@@ -247,8 +247,8 @@ struct rxrpc_transport *rxrpc_name_to_transport(struct rxrpc_sock *rx,
/* find a remote transport endpoint from the local one */ /* find a remote transport endpoint from the local one */
peer = rxrpc_lookup_peer(rx->local, srx, gfp); peer = rxrpc_lookup_peer(rx->local, srx, gfp);
if (IS_ERR(peer)) if (!peer)
return ERR_CAST(peer); return ERR_PTR(-ENOMEM);
/* find a transport */ /* find a transport */
trans = rxrpc_get_transport(rx->local, peer, gfp); trans = rxrpc_get_transport(rx->local, peer, gfp);
......
...@@ -96,7 +96,7 @@ static int rxrpc_accept_incoming_call(struct rxrpc_local *local, ...@@ -96,7 +96,7 @@ static int rxrpc_accept_incoming_call(struct rxrpc_local *local,
notification->mark = RXRPC_SKB_MARK_NEW_CALL; notification->mark = RXRPC_SKB_MARK_NEW_CALL;
peer = rxrpc_lookup_peer(local, srx, GFP_NOIO); peer = rxrpc_lookup_peer(local, srx, GFP_NOIO);
if (IS_ERR(peer)) { if (!peer) {
_debug("no peer"); _debug("no peer");
ret = -EBUSY; ret = -EBUSY;
goto error; goto error;
......
...@@ -639,7 +639,7 @@ static struct rxrpc_connection *rxrpc_conn_from_local(struct rxrpc_local *local, ...@@ -639,7 +639,7 @@ static struct rxrpc_connection *rxrpc_conn_from_local(struct rxrpc_local *local,
rxrpc_get_addr_from_skb(local, skb, &srx); rxrpc_get_addr_from_skb(local, skb, &srx);
rcu_read_lock(); rcu_read_lock();
peer = rxrpc_lookup_peer_rcu(local, &srx); peer = rxrpc_lookup_peer_rcu(local, &srx);
if (IS_ERR(peer)) if (!peer)
goto cant_find_peer; goto cant_find_peer;
trans = rxrpc_find_transport(local, peer); trans = rxrpc_find_transport(local, peer);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册