tcp_send.c (82845079160817cc6ac64e5321bbd935e0a47b3a) tcp_send.c (ebeeb1ad9b8adcc37c2ec21a96f39e9d35199b46)
1/*
2 * Copyright (c) 2006 Oracle. All rights reserved.
3 *
4 * This software is available to you under a choice of one of two
5 * licenses. You may choose to be licensed under the terms of the GNU
6 * General Public License (GPL) Version 2, available from the file
7 * COPYING in the main directory of this source tree, or the
8 * OpenIB.org BSD license below:

--- 190 unchanged lines hidden (view full) ---

199 rds_tcp_stats_inc(s_tcp_write_space_calls);
200
201 rdsdebug("tcp una %u\n", rds_tcp_snd_una(tc));
202 tc->t_last_seen_una = rds_tcp_snd_una(tc);
203 rds_send_path_drop_acked(cp, rds_tcp_snd_una(tc), rds_tcp_is_acked);
204
205 rcu_read_lock();
206 if ((refcount_read(&sk->sk_wmem_alloc) << 1) <= sk->sk_sndbuf &&
1/*
2 * Copyright (c) 2006 Oracle. All rights reserved.
3 *
4 * This software is available to you under a choice of one of two
5 * licenses. You may choose to be licensed under the terms of the GNU
6 * General Public License (GPL) Version 2, available from the file
7 * COPYING in the main directory of this source tree, or the
8 * OpenIB.org BSD license below:

--- 190 unchanged lines hidden (view full) ---

199 rds_tcp_stats_inc(s_tcp_write_space_calls);
200
201 rdsdebug("tcp una %u\n", rds_tcp_snd_una(tc));
202 tc->t_last_seen_una = rds_tcp_snd_una(tc);
203 rds_send_path_drop_acked(cp, rds_tcp_snd_una(tc), rds_tcp_is_acked);
204
205 rcu_read_lock();
206 if ((refcount_read(&sk->sk_wmem_alloc) << 1) <= sk->sk_sndbuf &&
207 !test_bit(RDS_DESTROY_PENDING, &cp->cp_flags))
207 !rds_destroy_pending(cp->cp_conn))
208 queue_delayed_work(rds_wq, &cp->cp_send_w, 0);
209 rcu_read_unlock();
210
211out:
212 read_unlock_bh(&sk->sk_callback_lock);
213
214 /*
215 * write_space is only called when data leaves tcp's send queue if

--- 15 unchanged lines hidden ---
208 queue_delayed_work(rds_wq, &cp->cp_send_w, 0);
209 rcu_read_unlock();
210
211out:
212 read_unlock_bh(&sk->sk_callback_lock);
213
214 /*
215 * write_space is only called when data leaves tcp's send queue if

--- 15 unchanged lines hidden ---