Re: [PATCH v2] net/mlx5e: avoid stack overflow in mlx5e_open_channels

From: Saeed Mahameed
Date: Tue Apr 26 2016 - 14:53:23 EST


On Tue, Apr 26, 2016 at 6:52 PM, Arnd Bergmann <arnd@xxxxxxxx> wrote:
> struct mlx5e_channel_param is a large structure that is allocated
> on the stack of mlx5e_open_channels, and with a recent change
> it has grown beyond the warning size for the maximum stack
> that a single function should use:
>
> mellanox/mlx5/core/en_main.c: In function 'mlx5e_open_channels':
> mellanox/mlx5/core/en_main.c:1325:1: error: the frame size of 1072 bytes is larger than 1024 bytes [-Werror=frame-larger-than=]
>
> The function is already using dynamic allocation and is not in
> a fast path, so the easiest workaround is to use another kzalloc
> for allocating the channel parameters.
>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> Fixes: d3c9bc2743dc ("net/mlx5e: Added ICO SQs")

Acked-by: Saeed Mahameed <saeedm@xxxxxxxxxxxx>