[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20151005.040543.1114187809443016020.davem@davemloft.net>
Date: Mon, 05 Oct 2015 04:05:43 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: eric.dumazet@...il.com
Cc: netdev@...r.kernel.org, ycheng@...gle.com
Subject: Re: [PATCH net] inet: fix race in reqsk_queue_unlink()
From: Eric Dumazet <eric.dumazet@...il.com>
Date: Thu, 01 Oct 2015 05:39:26 -0700
> From: Eric Dumazet <edumazet@...gle.com>
>
> reqsk_timer_handler() tests if icsk_accept_queue.listen_opt
> is NULL at its beginning.
>
> By the time it calls inet_csk_reqsk_queue_drop() and
> reqsk_queue_unlink(), listener might have been closed and
> inet_csk_listen_stop() had called reqsk_queue_yank_acceptq()
> which sets icsk_accept_queue.listen_opt to NULL
>
> We therefore need to correctly check listen_opt being NULL
> after holding syn_wait_lock for proper synchronization.
>
> Fixes: fa76ce7328b2 ("inet: get rid of central tcp/dccp listener timer")
> Fixes: b357a364c57c ("inet: fix possible panic in reqsk_queue_unlink()")
> 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