: Replace pipe assignment-function with assignment
PATCH 5/9 : Replace pipe assignment-function with assignment
The function ccid2_change_pipe only does an assignment. This patch simplifies the code by replacing the function with the assignment it performs.
Furthermore, the type of pipe is promoted from signed' to unsigned (increasing the range). As a result, a BUG_ON test for negative values now becomes obsolete (for safety not removed, but replaced with a less annoying DCCP_BUG').
--- net/dccp/ccids/ccid2.c | 16 ++++++---------- net/dccp/ccids/ccid2.h | 3 ++- 2 files changed, 8 insertions(+), 11 deletions(-)
net/dccp/ccids/ccid2.c +6 -10
@@ -171,11 +171,6 @@ static void ccid2_change_srtt(struct ccid2_hc_tx_sock *hctx, long val) hctx->ccid2hctx_srtt = val; } -static void ccid2_change_pipe (struct ccid2_hc_tx_sock *hctx,long val) -{ - hctx->ccid2hctx_pipe = val; -} -static void ccid2_start_rto_timer (struct sock *sk);static void ccid2_hc_tx_rto_expire (unsigned long data)
@@ -205,11 +200,11 @@ static void ccid2_hc_tx_rto_expire(unsigned long data)ccid2_start_rto_timer (sk);/* adjust pipe, cwnd etc */ -ccid2_change_pipe (hctx,0 ); hctx->ccid2hctx_ssthresh = hctx->ccid2hctx_cwnd /2 ;if (hctx->ccid2hctx_ssthresh <2 ) hctx->ccid2hctx_ssthresh =2 ; hctx->ccid2hctx_cwnd =1 ; + hctx->ccid2hctx_pipe =0 ;/* clear state about stuff we sent */ hctx->ccid2hctx_seqt = hctx->ccid2hctx_seqh;
@@ -248,8 +243,7 @@ static void ccid2_hc_tx_packet_sent(struct sock *sk, int more, unsigned int len)BUG_ON (!hctx->ccid2hctx_sendwait); hctx->ccid2hctx_sendwait =0 ; -ccid2_change_pipe (hctx, hctx->ccid2hctx_pipe +1 ); -BUG_ON (hctx->ccid2hctx_pipe <0 ); + hctx->ccid2hctx_pipe++;/* There is an issue. What if another packet is sent between * packet_send() and packet_sent(). Then the sequence number would be
@@ -519,8 +513,10 @@ static void ccid2_hc_tx_dec_pipe(struct sock *sk) {struct ccid2_hc_tx_sock *hctx =ccid2_hc_tx_sk (sk); -ccid2_change_pipe (hctx, hctx->ccid2hctx_pipe-1 ); -BUG_ON (hctx->ccid2hctx_pipe <0 ); +if (hctx->ccid2hctx_pipe =0 ) +DCCP_BUG ("pipe = 0" ); +else + hctx->ccid2hctx_pipe--;if (hctx->ccid2hctx_pipe =0 )ccid2_hc_tx_kill_rto_timer (sk);
net/dccp/ccids/ccid2.h +2 -1
@@ -42,6 +42,7 @@ struct ccid2_seq {/** struct ccid2_hc_tx_sock - CCID2 TX half connection * +* @ccid2hctx_{cwnd,ssthresh,pipe}: as per RFC 4341, section 5 * @ccid2hctx_ssacks - ACKs recv in slow start * @ccid2hctx_acks - ACKS recv in AI phase * @ccid2hctx_lastrtt -time RTT was last measured
@@ -51,9 +52,9 @@ struct ccid2_seq {struct ccid2_hc_tx_sock {u32 ccid2hctx_cwnd;u32 ccid2hctx_ssthresh; +u32 ccid2hctx_pipe;int ccid2hctx_ssacks;int ccid2hctx_acks; -int ccid2hctx_pipe;struct ccid2_seq *ccid2hctx_seqbuf[CCID2_SEQBUF_MAX ];int ccid2hctx_seqbufc;struct ccid2_seq *ccid2hctx_seqh;
Signature · 1 line
1.5.2.2.238.g7cbf2f2-dirty
Quoted 8 lines · Gerrit Renker
The function
ccid2_change_pipeonly does an assignment. This patch simplifies the code by replacing the function with the assignment it performs.Furthermore, the type of pipe is promoted from
signed' to unsigned (increasing the range). As a result, a BUG_ON test for negative values now becomes obsolete (for safety not removed, but replaced with a less annoyingDCCP_BUG').Signed-off-by Gerrit Renker <[email protected]>