Re: [PATCH take 2] pkt_sched: Fix qdisc_watchdog() vs. dev_deactivate() race
From: David Miller <davem@davemloft.net>
Date: 2008-08-21 12:11:35
From: David Miller <davem@davemloft.net>
Date: 2008-08-21 12:11:35
From: Jarek Poplawski <redacted> Date: Thu, 21 Aug 2008 05:49:11 +0000
pkt_sched: Fix qdisc_watchdog() vs. dev_deactivate() race dev_deactivate() can skip rescheduling of a qdisc by qdisc_watchdog() or other timer calling netif_schedule() after dev_queue_deactivate(). We prevent this checking aliveness before scheduling the timer. Since during deactivation the root qdisc is available only as qdisc_sleeping additional accessor qdisc_root_sleeping() is created. With feedback from Herbert Xu [off-list ref] Signed-off-by: Jarek Poplawski <redacted>
Applied, thanks a lot Jarek.