sch_netem: replace magic numbers with enumerate
authorYang Yingliang <yangyingliang@huawei.com>
Sat, 18 Jan 2014 10:13:31 +0000 (18:13 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 20 Jan 2014 01:17:34 +0000 (17:17 -0800)
Replace some magic numbers which describe states of 4-state model
loss generator with enumerate.

Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/sch_netem.c

index 3019c10d6c5631d96a7a0280b212caf136b12c16..a2bfc371b44a3339709be67d58004a00400abe8e 100644 (file)
@@ -110,6 +110,13 @@ struct netem_sched_data {
                CLG_GILB_ELL,
        } loss_model;
 
+       enum {
+               TX_IN_GAP_PERIOD = 1,
+               TX_IN_BURST_PERIOD,
+               LOST_IN_GAP_PERIOD,
+               LOST_IN_BURST_PERIOD,
+       } _4_state_model;
+
        /* Correlated Loss Generation models */
        struct clgstate {
                /* state of the Markov chain */
@@ -205,43 +212,45 @@ static bool loss_4state(struct netem_sched_data *q)
         * probabilities outgoing from the current state, then decides the
         * next state and if the next packet has to be transmitted or lost.
         * The four states correspond to:
-        *   1 => successfully transmitted packets within a gap period
-        *   4 => isolated losses within a gap period
-        *   3 => lost packets within a burst period
-        *   2 => successfully transmitted packets within a burst period
+        *   TX_IN_GAP_PERIOD => successfully transmitted packets within a gap period
+        *   LOST_IN_BURST_PERIOD => isolated losses within a gap period
+        *   LOST_IN_GAP_PERIOD => lost packets within a burst period
+        *   TX_IN_GAP_PERIOD => successfully transmitted packets within a burst period
         */
        switch (clg->state) {
-       case 1:
+       case TX_IN_GAP_PERIOD:
                if (rnd < clg->a4) {
-                       clg->state = 4;
+                       clg->state = LOST_IN_BURST_PERIOD;
                        return true;
                } else if (clg->a4 < rnd && rnd < clg->a1 + clg->a4) {
-                       clg->state = 3;
+                       clg->state = LOST_IN_GAP_PERIOD;
                        return true;
-               } else if (clg->a1 + clg->a4 < rnd)
-                       clg->state = 1;
+               } else if (clg->a1 + clg->a4 < rnd) {
+                       clg->state = TX_IN_GAP_PERIOD;
+               }
 
                break;
-       case 2:
+       case TX_IN_BURST_PERIOD:
                if (rnd < clg->a5) {
-                       clg->state = 3;
+                       clg->state = LOST_IN_GAP_PERIOD;
                        return true;
-               } else
-                       clg->state = 2;
+               } else {
+                       clg->state = TX_IN_BURST_PERIOD;
+               }
 
                break;
-       case 3:
+       case LOST_IN_GAP_PERIOD:
                if (rnd < clg->a3)
-                       clg->state = 2;
+                       clg->state = TX_IN_BURST_PERIOD;
                else if (clg->a3 < rnd && rnd < clg->a2 + clg->a3) {
-                       clg->state = 1;
+                       clg->state = TX_IN_GAP_PERIOD;
                } else if (clg->a2 + clg->a3 < rnd) {
-                       clg->state = 3;
+                       clg->state = LOST_IN_GAP_PERIOD;
                        return true;
                }
                break;
-       case 4:
-               clg->state = 1;
+       case LOST_IN_BURST_PERIOD:
+               clg->state = TX_IN_GAP_PERIOD;
                break;
        }