projects
/
powerpc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PKTGEN]: fix device name handling
[powerpc.git]
/
include
/
net
/
pkt_sched.h
diff --git
a/include/net/pkt_sched.h
b/include/net/pkt_sched.h
index
6492e73
..
f6afee7
100644
(file)
--- a/
include/net/pkt_sched.h
+++ b/
include/net/pkt_sched.h
@@
-1,6
+1,7
@@
#ifndef __NET_PKT_SCHED_H
#define __NET_PKT_SCHED_H
#ifndef __NET_PKT_SCHED_H
#define __NET_PKT_SCHED_H
+#include <linux/jiffies.h>
#include <net/sch_generic.h>
struct qdisc_walker
#include <net/sch_generic.h>
struct qdisc_walker
@@
-59,8
+60,8
@@
typedef struct timeval psched_time_t;
typedef long psched_tdiff_t;
#define PSCHED_GET_TIME(stamp) do_gettimeofday(&(stamp))
typedef long psched_tdiff_t;
#define PSCHED_GET_TIME(stamp) do_gettimeofday(&(stamp))
-#define PSCHED_US2JIFFIE(usecs)
(((usecs)+(1000000/HZ-1))/(1000000/HZ)
)
-#define PSCHED_JIFFIE2US(delay)
((delay)*(1000000/HZ)
)
+#define PSCHED_US2JIFFIE(usecs)
usecs_to_jiffies(usecs
)
+#define PSCHED_JIFFIE2US(delay)
jiffies_to_usecs(delay
)
#else /* !CONFIG_NET_SCH_CLK_GETTIMEOFDAY */
#else /* !CONFIG_NET_SCH_CLK_GETTIMEOFDAY */
@@
-123,9
+124,9
@@
do { \
default: \
__delta = 0; \
case 2: \
default: \
__delta = 0; \
case 2: \
- __delta +=
1000000
; \
+ __delta +=
USEC_PER_SEC
; \
case 1: \
case 1: \
- __delta +=
1000000
; \
+ __delta +=
USEC_PER_SEC
; \
} \
} \
__delta; \
} \
} \
__delta; \
@@
-136,9
+137,9
@@
psched_tod_diff(int delta_sec, int bound)
{
int delta;
{
int delta;
- if (bound <=
1000000 || delta_sec > (0x7FFFFFFF/1000000
)-1)
+ if (bound <=
USEC_PER_SEC || delta_sec > (0x7FFFFFFF/USEC_PER_SEC
)-1)
return bound;
return bound;
- delta = delta_sec *
1000000
;
+ delta = delta_sec *
USEC_PER_SEC
;
if (delta > bound || delta < 0)
delta = bound;
return delta;
if (delta > bound || delta < 0)
delta = bound;
return delta;
@@
-152,9
+153,9
@@
psched_tod_diff(int delta_sec, int bound)
default: \
__delta = psched_tod_diff(__delta_sec, bound); break; \
case 2: \
default: \
__delta = psched_tod_diff(__delta_sec, bound); break; \
case 2: \
- __delta +=
1000000
; \
+ __delta +=
USEC_PER_SEC
; \
case 1: \
case 1: \
- __delta +=
1000000
; \
+ __delta +=
USEC_PER_SEC
; \
case 0: \
if (__delta > bound || __delta < 0) \
__delta = bound; \
case 0: \
if (__delta > bound || __delta < 0) \
__delta = bound; \
@@
-170,15
+171,15
@@
psched_tod_diff(int delta_sec, int bound)
({ \
int __delta = (tv).tv_usec + (delta); \
(tv_res).tv_sec = (tv).tv_sec; \
({ \
int __delta = (tv).tv_usec + (delta); \
(tv_res).tv_sec = (tv).tv_sec; \
-
if (__delta > 1000000) { (tv_res).tv_sec++; __delta -= 1000000
; } \
+
while (__delta >= USEC_PER_SEC) { (tv_res).tv_sec++; __delta -= USEC_PER_SEC
; } \
(tv_res).tv_usec = __delta; \
})
#define PSCHED_TADD(tv, delta) \
({ \
(tv).tv_usec += (delta); \
(tv_res).tv_usec = __delta; \
})
#define PSCHED_TADD(tv, delta) \
({ \
(tv).tv_usec += (delta); \
-
if ((tv).tv_usec > 1000000
) { (tv).tv_sec++; \
- (tv).tv_usec -=
1000000
; } \
+
while ((tv).tv_usec >= USEC_PER_SEC
) { (tv).tv_sec++; \
+ (tv).tv_usec -=
USEC_PER_SEC
; } \
})
/* Set/check that time is in the "past perfect";
})
/* Set/check that time is in the "past perfect";
@@
-217,12
+218,13
@@
extern struct qdisc_rate_table *qdisc_get_rtab(struct tc_ratespec *r,
struct rtattr *tab);
extern void qdisc_put_rtab(struct qdisc_rate_table *tab);
struct rtattr *tab);
extern void qdisc_put_rtab(struct qdisc_rate_table *tab);
-extern
int qdisc_restart
(struct net_device *dev);
+extern
void __qdisc_run
(struct net_device *dev);
static inline void qdisc_run(struct net_device *dev)
{
static inline void qdisc_run(struct net_device *dev)
{
- while (!netif_queue_stopped(dev) && qdisc_restart(dev) < 0)
- /* NOTHING */;
+ if (!netif_queue_stopped(dev) &&
+ !test_and_set_bit(__LINK_STATE_QDISC_RUNNING, &dev->state))
+ __qdisc_run(dev);
}
extern int tc_classify(struct sk_buff *skb, struct tcf_proto *tp,
}
extern int tc_classify(struct sk_buff *skb, struct tcf_proto *tp,