linux/net/sched
Guillaume Chazarain 89e1df74f8 [PKT_SCHED] netem: Fix slab corruption with netem (2nd try)
CONFIG_DEBUG_SLAB found the following bug:
netem_enqueue() in sch_netem.c gets a pointer inside a slab object:
struct netem_skb_cb *cb = (struct netem_skb_cb *)skb->cb;
But then, the slab object may be freed:
skb = skb_unshare(skb, GFP_ATOMIC)
cb is still pointing inside the freed skb, so here is a patch to
initialize cb later, and make it clear that initializing it sooner
is a bad idea.

[From Stephen Hemminger: leave cb unitialized in order to let gcc
complain in case of use before initialization]

Signed-off-by: Guillaume Chazarain <guichaz@yahoo.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-07-21 14:45:25 -07:00
..
Kconfig Kconfig: Typos in net/sched/Kconfig 2006-06-30 18:53:46 +02:00
Makefile [PKT_SCHED]: Prefix tc actions with act_ 2006-01-09 14:16:14 -08:00
act_api.c [MAINTAINERS]: Add proper entry for TC classifier 2006-07-12 13:58:48 -07:00
act_gact.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
act_ipt.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
act_mirred.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
act_pedit.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
act_police.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
act_simple.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cls_api.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cls_basic.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cls_fw.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cls_route.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cls_rsvp.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cls_rsvp.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cls_rsvp6.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cls_tcindex.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cls_u32.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
em_cmp.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
em_meta.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
em_nbyte.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
em_text.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
em_u32.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
ematch.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
estimator.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sch_api.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_atm.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_blackhole.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_cbq.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_dsmark.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_fifo.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_generic.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_gred.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_hfsc.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_htb.c [PATCH] sch_htb compile fix. 2006-07-15 11:40:20 -07:00
sch_ingress.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_netem.c [PKT_SCHED] netem: Fix slab corruption with netem (2nd try) 2006-07-21 14:45:25 -07:00
sch_prio.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_red.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_sfq.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_tbf.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
sch_teql.c [NET]: Add netif_tx_lock 2006-06-17 21:30:14 -07:00