]> err.no Git - linux-2.6/commitdiff
[NET_SCHED]: turn PSCHED_TDIFF_SAFE into inline function
authorPatrick McHardy <kaber@trash.net>
Fri, 23 Mar 2007 18:29:11 +0000 (11:29 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Thu, 26 Apr 2007 05:27:54 +0000 (22:27 -0700)
Also rename to psched_tdiff_bounded.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/pkt_sched.h
include/net/red.h
net/sched/act_police.c
net/sched/sch_htb.c
net/sched/sch_tbf.c

index 1639737402075ac6e747ffe5bac7ef763817e527..e6b1da050d32c10627d704dd50e485b77f317cef 100644 (file)
@@ -51,10 +51,14 @@ typedef long        psched_tdiff_t;
 #define PSCHED_GET_TIME(stamp) \
        ((stamp) = PSCHED_NS2US(ktime_to_ns(ktime_get())))
 
-#define PSCHED_TDIFF_SAFE(tv1, tv2, bound) \
-                                       min_t(long long, (tv1) - (tv2), bound)
 #define PSCHED_PASTPERFECT             0
 
+static inline psched_tdiff_t
+psched_tdiff_bounded(psched_time_t tv1, psched_time_t tv2, psched_time_t bound)
+{
+       return min(tv1 - tv2, bound);
+}
+
 struct qdisc_watchdog {
        struct hrtimer  timer;
        struct Qdisc    *qdisc;
index d9e1149a2bca6874e4072a8e1e4556b80d2bbe1f..0bc16913fdd72f0bebb28fac10dfb1e99717d3de 100644 (file)
@@ -178,7 +178,7 @@ static inline unsigned long red_calc_qavg_from_idle_time(struct red_parms *p)
        int  shift;
 
        PSCHED_GET_TIME(now);
-       us_idle = PSCHED_TDIFF_SAFE(now, p->qidlestart, p->Scell_max);
+       us_idle = psched_tdiff_bounded(now, p->qidlestart, p->Scell_max);
 
        /*
         * The problem: ideally, average length queue recalcultion should
index 0a5679ea6c64d097169f3da16f8775b07e8070d0..65d60a3f77618c2a23ab0bc70714249cee75c435 100644 (file)
@@ -298,8 +298,8 @@ static int tcf_act_police(struct sk_buff *skb, struct tc_action *a,
 
                PSCHED_GET_TIME(now);
 
-               toks = PSCHED_TDIFF_SAFE(now, police->tcfp_t_c,
-                                        police->tcfp_burst);
+               toks = psched_tdiff_bounded(now, police->tcfp_t_c,
+                                           police->tcfp_burst);
                if (police->tcfp_P_tab) {
                        ptoks = toks + police->tcfp_ptoks;
                        if (ptoks > (long)L2T_P(police, police->tcfp_mtu))
@@ -544,8 +544,8 @@ int tcf_police(struct sk_buff *skb, struct tcf_police *police)
                }
 
                PSCHED_GET_TIME(now);
-               toks = PSCHED_TDIFF_SAFE(now, police->tcfp_t_c,
-                                        police->tcfp_burst);
+               toks = psched_tdiff_bounded(now, police->tcfp_t_c,
+                                           police->tcfp_burst);
                if (police->tcfp_P_tab) {
                        ptoks = toks + police->tcfp_ptoks;
                        if (ptoks > (long)L2T_P(police, police->tcfp_mtu))
index b7abd0ae676a914f97423ddd05eae1b9b326dabc..71e4c92b7e87855db6e4d06787585cfb7492a631 100644 (file)
@@ -729,7 +729,7 @@ static void htb_charge_class(struct htb_sched *q, struct htb_class *cl,
        cl->T = toks
 
        while (cl) {
-               diff = PSCHED_TDIFF_SAFE(q->now, cl->t_c, (u32) cl->mbuffer);
+               diff = psched_tdiff_bounded(q->now, cl->t_c, cl->mbuffer);
                if (cl->level >= level) {
                        if (cl->level == level)
                                cl->xstats.lends++;
@@ -789,7 +789,7 @@ static psched_time_t htb_do_events(struct htb_sched *q, int level)
                        return cl->pq_key;
 
                htb_safe_rb_erase(p, q->wait_pq + level);
-               diff = PSCHED_TDIFF_SAFE(q->now, cl->t_c, (u32) cl->mbuffer);
+               diff = psched_tdiff_bounded(q->now, cl->t_c, cl->mbuffer);
                htb_change_class_mode(q, cl, &diff);
                if (cl->cmode != HTB_CAN_SEND)
                        htb_add_to_wait_tree(q, cl, diff);
index 626ce96800fee9dcecfe942e951136cd9b11f086..da9f40e54447a5605d0702e5b53ce4964fdb255d 100644 (file)
@@ -201,7 +201,7 @@ static struct sk_buff *tbf_dequeue(struct Qdisc* sch)
 
                PSCHED_GET_TIME(now);
 
-               toks = PSCHED_TDIFF_SAFE(now, q->t_c, q->buffer);
+               toks = psched_tdiff_bounded(now, q->t_c, q->buffer);
 
                if (q->P_tab) {
                        ptoks = toks + q->ptokens;