[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231216155145.GN6288@kernel.org>
Date: Sat, 16 Dec 2023 15:51:45 +0000
From: Simon Horman <horms@...nel.org>
To: Zhipeng Lu <alexious@....edu.cn>
Cc: Edward Cree <ecree.xilinx@...il.com>,
Martin Habets <habetsm.xilinx@...il.com>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
netdev@...r.kernel.org, linux-net-drivers@....com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] sfc: fix a double-free bug in efx_probe_filters
On Thu, Dec 14, 2023 at 11:22:46PM +0800, Zhipeng Lu wrote:
> In efx_probe_filters, the channel->rps_flow_id is freed in a
> efx_for_each_channel marco when success equals to 0.
> However, after the following call chain:
>
> efx_probe_filters
> |-> ef100_net_open
> |-> ef100_net_stop
> |-> efx_remove_filters
I think the call chain may be a bit more like:
ef100_net_open
|-> efx_probe_filters
|-> ef100_net_stop
|-> efx_remove_filters
>
> The channel->rps_flow_id is freed again in the efx_for_each_channel of
> efx_remove_filters, triggering a double-free bug.
>
> Fixes: a9dc3d5612ce ("sfc_ef100: RX filter table management and related gubbins")
> Signed-off-by: Zhipeng Lu <alexious@....edu.cn>
The above nit not withstanding, I agree with your reasoning.
And that the problem was introduced in the cited commit.
Reviewed-by: Simon Horman <horms@...nel.org>
...
Powered by blists - more mailing lists