[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20150810.211821.2246516216165801977.davem@davemloft.net>
Date: Mon, 10 Aug 2015 21:18:21 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: eric.dumazet@...il.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net] inet: fix races with reqsk timers
From: Eric Dumazet <eric.dumazet@...il.com>
Date: Mon, 10 Aug 2015 09:09:13 -0700
> From: Eric Dumazet <edumazet@...gle.com>
>
> reqsk_queue_destroy() and reqsk_queue_unlink() should use
> del_timer_sync() instead of del_timer() before calling reqsk_put(),
> otherwise we could free a req still used by another cpu.
>
> But before doing so, reqsk_queue_destroy() must release syn_wait_lock
> spinlock or risk a dead lock, as reqsk_timer_handler() might
> need to take this same spinlock from reqsk_queue_unlink() (called from
> inet_csk_reqsk_queue_drop())
>
> Fixes: fa76ce7328b2 ("inet: get rid of central tcp/dccp listener timer")
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
Applied and queued up for -stable.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists