Thread (5 messages) 5 messages, 3 authors, 2006-12-02

Re: [PKT_SCHED] act_gact: division by zero

From: Patrick McHardy <hidden>
Date: 2006-11-30 12:17:16

Nordlund Kim (Nokia-NET/Helsinki) wrote:
quoted hunk ↗ jump to hunk
tc qdisc add dev eth1 handle ffff: ingress
tc filter add dev eth1 protocol ip parent ffff: pref 99 basic \
   flowid 1:1 action pass random determ drop 0
                                             ^
the above cause a division by zero in the kernel on the first
packet in.

Signed-off-by: Kim Nordlund <redacted>

diff -rub linux-2.6.19-orig/net/sched/act_gact.c linux/net/sched/act_gact.c
--- linux-2.6.19-orig/net/sched/act_gact.c	2006-11-29 23:57:37.000000000 +0200
+++ linux/net/sched/act_gact.c	2006-11-30 13:22:37.000000000 +0200
@@ -111,7 +111,7 @@
 	if (tb[TCA_GACT_PROB-1] != NULL) {
 		struct tc_gact_p *p_parm = RTA_DATA(tb[TCA_GACT_PROB-1]);
 		gact->tcfg_paction = p_parm->paction;
-		gact->tcfg_pval    = p_parm->pval;
+		gact->tcfg_pval    = p_parm->pval ? : 1;

I think it should reject an invalid configuration or handle
the zero case correctly by not dividing.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help