sch_gred: should not use GFP_KERNEL while holding a spinlock
authorEric Dumazet <eric.dumazet@gmail.com>
Sun, 11 Dec 2011 23:42:53 +0000 (23:42 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 6 Jan 2012 22:17:27 +0000 (14:17 -0800)
commit79a25778ca9fbc4ea2bd8c1f32d73bd73a1a3817
treec9531c981cc1852b68ee97281c5709af7aa7249d
parent77fe0b97b750a3064e67330b131811edeebbc29b
sch_gred: should not use GFP_KERNEL while holding a spinlock

[ Upstream commit 3f1e6d3fd37bd4f25e5b19f1c7ca21850426c33f ]

gred_change_vq() is called under sch_tree_lock(sch).

This means a spinlock is held, and we are not allowed to sleep in this
context.

We might pre-allocate memory using GFP_KERNEL before taking spinlock,
but this is not suitable for stable material.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
net/sched/sch_gred.c