diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-23 14:47:02 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-23 14:47:02 -0400 |
commit | 5f05647dd81c11a6a165ccc8f0c1370b16f3bcb0 (patch) | |
tree | 7851ef1c93aa1aba7ef327ca4b75fd35e6d10f29 /net/rds/tcp_recv.c | |
parent | 02f36038c568111ad4fc433f6fa760ff5e38fab4 (diff) | |
parent | ec37a48d1d16c30b655ac5280209edf52a6775d4 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1699 commits)
bnx2/bnx2x: Unsupported Ethtool operations should return -EINVAL.
vlan: Calling vlan_hwaccel_do_receive() is always valid.
tproxy: use the interface primary IP address as a default value for --on-ip
tproxy: added IPv6 support to the socket match
cxgb3: function namespace cleanup
tproxy: added IPv6 support to the TPROXY target
tproxy: added IPv6 socket lookup function to nf_tproxy_core
be2net: Changes to use only priority codes allowed by f/w
tproxy: allow non-local binds of IPv6 sockets if IP_TRANSPARENT is enabled
tproxy: added tproxy sockopt interface in the IPV6 layer
tproxy: added udp6_lib_lookup function
tproxy: added const specifiers to udp lookup functions
tproxy: split off ipv6 defragmentation to a separate module
l2tp: small cleanup
nf_nat: restrict ICMP translation for embedded header
can: mcp251x: fix generation of error frames
can: mcp251x: fix endless loop in interrupt handler if CANINTF_MERRF is set
can-raw: add msg_flags to distinguish local traffic
9p: client code cleanup
rds: make local functions/variables static
...
Fix up conflicts in net/core/dev.c, drivers/net/pcmcia/smc91c92_cs.c and
drivers/net/wireless/ath/ath9k/debug.c as per David
Diffstat (limited to 'net/rds/tcp_recv.c')
-rw-r--r-- | net/rds/tcp_recv.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/net/rds/tcp_recv.c b/net/rds/tcp_recv.c index e43797404102..78205e25500a 100644 --- a/net/rds/tcp_recv.c +++ b/net/rds/tcp_recv.c | |||
@@ -39,7 +39,7 @@ | |||
39 | 39 | ||
40 | static struct kmem_cache *rds_tcp_incoming_slab; | 40 | static struct kmem_cache *rds_tcp_incoming_slab; |
41 | 41 | ||
42 | void rds_tcp_inc_purge(struct rds_incoming *inc) | 42 | static void rds_tcp_inc_purge(struct rds_incoming *inc) |
43 | { | 43 | { |
44 | struct rds_tcp_incoming *tinc; | 44 | struct rds_tcp_incoming *tinc; |
45 | tinc = container_of(inc, struct rds_tcp_incoming, ti_inc); | 45 | tinc = container_of(inc, struct rds_tcp_incoming, ti_inc); |
@@ -190,10 +190,10 @@ static int rds_tcp_data_recv(read_descriptor_t *desc, struct sk_buff *skb, | |||
190 | * processing. | 190 | * processing. |
191 | */ | 191 | */ |
192 | while (left) { | 192 | while (left) { |
193 | if (tinc == NULL) { | 193 | if (!tinc) { |
194 | tinc = kmem_cache_alloc(rds_tcp_incoming_slab, | 194 | tinc = kmem_cache_alloc(rds_tcp_incoming_slab, |
195 | arg->gfp); | 195 | arg->gfp); |
196 | if (tinc == NULL) { | 196 | if (!tinc) { |
197 | desc->error = -ENOMEM; | 197 | desc->error = -ENOMEM; |
198 | goto out; | 198 | goto out; |
199 | } | 199 | } |
@@ -229,7 +229,7 @@ static int rds_tcp_data_recv(read_descriptor_t *desc, struct sk_buff *skb, | |||
229 | 229 | ||
230 | if (left && tc->t_tinc_data_rem) { | 230 | if (left && tc->t_tinc_data_rem) { |
231 | clone = skb_clone(skb, arg->gfp); | 231 | clone = skb_clone(skb, arg->gfp); |
232 | if (clone == NULL) { | 232 | if (!clone) { |
233 | desc->error = -ENOMEM; | 233 | desc->error = -ENOMEM; |
234 | goto out; | 234 | goto out; |
235 | } | 235 | } |
@@ -272,7 +272,8 @@ out: | |||
272 | } | 272 | } |
273 | 273 | ||
274 | /* the caller has to hold the sock lock */ | 274 | /* the caller has to hold the sock lock */ |
275 | int rds_tcp_read_sock(struct rds_connection *conn, gfp_t gfp, enum km_type km) | 275 | static int rds_tcp_read_sock(struct rds_connection *conn, gfp_t gfp, |
276 | enum km_type km) | ||
276 | { | 277 | { |
277 | struct rds_tcp_connection *tc = conn->c_transport_data; | 278 | struct rds_tcp_connection *tc = conn->c_transport_data; |
278 | struct socket *sock = tc->t_sock; | 279 | struct socket *sock = tc->t_sock; |
@@ -326,7 +327,7 @@ void rds_tcp_data_ready(struct sock *sk, int bytes) | |||
326 | 327 | ||
327 | read_lock_bh(&sk->sk_callback_lock); | 328 | read_lock_bh(&sk->sk_callback_lock); |
328 | conn = sk->sk_user_data; | 329 | conn = sk->sk_user_data; |
329 | if (conn == NULL) { /* check for teardown race */ | 330 | if (!conn) { /* check for teardown race */ |
330 | ready = sk->sk_data_ready; | 331 | ready = sk->sk_data_ready; |
331 | goto out; | 332 | goto out; |
332 | } | 333 | } |
@@ -342,12 +343,12 @@ out: | |||
342 | ready(sk, bytes); | 343 | ready(sk, bytes); |
343 | } | 344 | } |
344 | 345 | ||
345 | int __init rds_tcp_recv_init(void) | 346 | int rds_tcp_recv_init(void) |
346 | { | 347 | { |
347 | rds_tcp_incoming_slab = kmem_cache_create("rds_tcp_incoming", | 348 | rds_tcp_incoming_slab = kmem_cache_create("rds_tcp_incoming", |
348 | sizeof(struct rds_tcp_incoming), | 349 | sizeof(struct rds_tcp_incoming), |
349 | 0, 0, NULL); | 350 | 0, 0, NULL); |
350 | if (rds_tcp_incoming_slab == NULL) | 351 | if (!rds_tcp_incoming_slab) |
351 | return -ENOMEM; | 352 | return -ENOMEM; |
352 | return 0; | 353 | return 0; |
353 | } | 354 | } |