[PATCH 1/2] Share ccid{3/4}_hc_tx_set_state function via tfrc_ccids

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[TFRC_CCIDS] Share ccid{3/4}_hc_tx_set_state function via tfrc_ccids

Signed-off-by: Leandro Melo de Sales <leandro@xxxxxxxxxxxxxxxxxxxx>

Index: ccid4.latest/net/dccp/ccids/ccid3.c
===================================================================
--- ccid4.latest.orig/net/dccp/ccids/ccid3.c
+++ ccid4.latest/net/dccp/ccids/ccid3.c
@@ -44,19 +44,6 @@ static int ccid3_debug;
 #define ccid3_pr_debug(format, a...)
 #endif
 
-static void ccid3_hc_tx_set_state(struct sock *sk,
-				  enum tfrc_hc_tx_states state)
-{
-	struct tfrc_hc_tx_sock *hctx = tfrc_hc_tx_sk(sk);
-	enum tfrc_hc_tx_states oldstate = hctx->ttx_state;
-
-	ccid3_pr_debug("%s(%p) %-8.8s -> %s\n",
-		       dccp_role(sk), sk, tfrc_tx_state_name(oldstate),
-		       tfrc_tx_state_name(state));
-	WARN_ON(state == oldstate);
-	hctx->ttx_state = state;
-}
-
 /*
  * Recalculate t_ipi and delta (should be called whenever X changes)
  */
@@ -159,7 +146,7 @@ static void ccid3_hc_tx_no_feedback_time
 		       tfrc_tx_state_name(hctx->ttx_state));
 
 	if (hctx->ttx_state == TTX_STATE_FBACK)
-		ccid3_hc_tx_set_state(sk, TTX_STATE_NO_FBACK);
+		tfrc_tx_set_state(sk, TTX_STATE_NO_FBACK);
 	else if (hctx->ttx_state != TTX_STATE_NO_FBACK)
 		goto out;
 
@@ -268,7 +255,7 @@ static int ccid3_hc_tx_send_packet(struc
 		}
 		ccid3_update_send_interval(hctx);
 
-		ccid3_hc_tx_set_state(sk, TTX_STATE_NO_FBACK);
+		tfrc_tx_set_state(sk, TTX_STATE_NO_FBACK);
 		break;
 	case TTX_STATE_NO_FBACK:
 	case TTX_STATE_FBACK:
@@ -361,7 +348,7 @@ static void ccid3_hc_tx_packet_recv(stru
 	 * Update allowed sending rate X as per draft rfc3448bis-00, 4.2/3
 	 */
 	if (hctx->ttx_state == TTX_STATE_NO_FBACK) {
-		ccid3_hc_tx_set_state(sk, TTX_STATE_FBACK);
+		tfrc_tx_set_state(sk, TTX_STATE_FBACK);
 
 		if (hctx->ttx_t_rto == 0) {
 			/*
@@ -446,7 +433,7 @@ static void ccid3_hc_tx_exit(struct sock
 {
 	struct tfrc_hc_tx_sock *hctx = tfrc_hc_tx_sk(sk);
 
-	ccid3_hc_tx_set_state(sk, TTX_STATE_TERM);
+	tfrc_tx_set_state(sk, TTX_STATE_TERM);
 	sk_stop_timer(sk, &hctx->ttx_no_feedback_timer);
 
 	tfrc_tx_hist_purge(&hctx->ttx_hist);
Index: ccid4.latest/net/dccp/ccids/ccid4.c
===================================================================
--- ccid4.latest.orig/net/dccp/ccids/ccid4.c
+++ ccid4.latest/net/dccp/ccids/ccid4.c
@@ -54,19 +54,6 @@ static int ccid4_debug;
 #define ccid4_pr_debug(format, a...)
 #endif
 
-static void ccid4_hc_tx_set_state(struct sock *sk,
-				  enum tfrc_hc_tx_states state)
-{
-	struct tfrc_hc_tx_sock *hctx = tfrc_hc_tx_sk(sk);
-	enum tfrc_hc_tx_states oldstate = hctx->ttx_state;
-
-	ccid4_pr_debug("%s(%p) %-8.8s -> %s\n",
-		       dccp_role(sk), sk, tfrc_tx_state_name(oldstate),
-		       tfrc_tx_state_name(state));
-	WARN_ON(state == oldstate);
-	hctx->ttx_state = state;
-}
-
 /*
  * Recalculate t_ipi and delta (should be called whenever X changes)
  */
@@ -192,7 +179,7 @@ static void ccid4_hc_tx_no_feedback_time
 		       tfrc_tx_state_name(hctx->ttx_state));
 
 	if (hctx->ttx_state == TTX_STATE_FBACK)
-		ccid4_hc_tx_set_state(sk, TTX_STATE_NO_FBACK);
+		tfrc_tx_set_state(sk, TTX_STATE_NO_FBACK);
 	else if (hctx->ttx_state != TTX_STATE_NO_FBACK)
 		goto out;
 
@@ -302,7 +289,7 @@ static int ccid4_hc_tx_send_packet(struc
 		}
 		ccid4_update_send_interval(hctx);
 
-		ccid4_hc_tx_set_state(sk, TTX_STATE_NO_FBACK);
+		tfrc_tx_set_state(sk, TTX_STATE_NO_FBACK);
 		break;
 	case TTX_STATE_NO_FBACK:
 	case TTX_STATE_FBACK:
@@ -396,7 +383,7 @@ static void ccid4_hc_tx_packet_recv(stru
 	 * Update allowed sending rate X as per draft rfc3448bis-00, 4.2/3
 	 */
 	if (hctx->ttx_state == TTX_STATE_NO_FBACK) {
-		ccid4_hc_tx_set_state(sk, TTX_STATE_FBACK);
+		tfrc_tx_set_state(sk, TTX_STATE_FBACK);
 
 		if (hctx->ttx_t_rto == 0) {
 			/*
@@ -483,7 +470,7 @@ static void ccid4_hc_tx_exit(struct sock
 {
 	struct tfrc_hc_tx_sock *hctx = tfrc_hc_tx_sk(sk);
 
-	ccid4_hc_tx_set_state(sk, TTX_STATE_TERM);
+	tfrc_tx_set_state(sk, TTX_STATE_TERM);
 	sk_stop_timer(sk, &hctx->ttx_no_feedback_timer);
 
 	tfrc_tx_hist_purge(&hctx->ttx_hist);
Index: ccid4.latest/net/dccp/ccids/lib/tfrc_ccids.c
===================================================================
--- ccid4.latest.orig/net/dccp/ccids/lib/tfrc_ccids.c
+++ ccid4.latest/net/dccp/ccids/lib/tfrc_ccids.c
@@ -162,3 +162,17 @@ int tfrc_rx_insert_options(struct sock *
 }
 
 EXPORT_SYMBOL_GPL(tfrc_rx_insert_options);
+
+void tfrc_tx_set_state(struct sock *sk, enum tfrc_hc_tx_states state)
+{
+	struct tfrc_hc_tx_sock *hctx = tfrc_hc_tx_sk(sk);
+	enum tfrc_hc_tx_states oldstate = hctx->ttx_state;
+
+	tfrc_pr_debug("%s(%p) %-8.8s -> %s\n", dccp_role(sk), sk,
+			tfrc_tx_state_name(oldstate),
+			tfrc_tx_state_name(state));
+	WARN_ON(state == oldstate);
+	hctx->ttx_state = state;
+}
+
+EXPORT_SYMBOL_GPL(tfrc_tx_set_state);
Index: ccid4.latest/net/dccp/ccids/lib/tfrc_ccids.h
===================================================================
--- ccid4.latest.orig/net/dccp/ccids/lib/tfrc_ccids.h
+++ ccid4.latest/net/dccp/ccids/lib/tfrc_ccids.h
@@ -198,3 +198,5 @@ extern int tfrc_tx_parse_options(struct 
 			unsigned char len, u16 idx, unsigned char *value);
 
 extern int tfrc_rx_insert_options(struct sock *sk, struct sk_buff *skb);
+
+extern void tfrc_tx_set_state(struct sock *sk, enum tfrc_hc_tx_states state);
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [IETF DCCP]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux