From: Francois Romieu Date: Tue, 31 Jan 2012 10:09:21 +0000 (+0100) Subject: r8169: avoid a useless work scheduling. X-Git-Tag: v2.6.39-400.9.0~423^2~19^2~11^2~15 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=f3161bde827de5b22ce80681faaac6c3a4719a95;p=users%2Fjedix%2Flinux-maple.git r8169: avoid a useless work scheduling. (cherry picked from commit 934714d088f35b81edafdce89397969baf77fb8a) Signed-off-by: Francois Romieu Suggested-by: Michał Mirosław Cc: Hayes Wang Signed-off-by: Joe Jin --- diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index c305e0344078..d7b9479b8026 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c @@ -5841,7 +5841,8 @@ static void rtl_slow_event_work(struct rtl8169_private *tp) /* Work around for rx fifo overflow */ case RTL_GIGA_MAC_VER_11: netif_stop_queue(dev); - rtl_schedule_task(tp, RTL_FLAG_TASK_RESET_PENDING); + /* XXX - Hack alert. See rtl_task(). */ + set_bit(RTL_FLAG_TASK_RESET_PENDING, tp->wk.flags); default: break; } @@ -5866,6 +5867,7 @@ static void rtl_task(struct work_struct *work) int bitnr; void (*action)(struct rtl8169_private *); } rtl_work[] = { + /* XXX - keep rtl_slow_event_work() as first element. */ { RTL_FLAG_TASK_SLOW_PENDING, rtl_slow_event_work }, { RTL_FLAG_TASK_RESET_PENDING, rtl_reset_work }, { RTL_FLAG_TASK_PHY_PENDING, rtl_phy_work }