Re: [PATCH] hv_netvsc: Make sure out channel is fully opened on send

From: David Miller
Date: Fri Mar 16 2018 - 10:16:42 EST


From: Mohammed Gamal <mgamal@xxxxxxxxxx>
Date: Tue, 13 Mar 2018 20:06:50 +0100

> Dring high network traffic changes to network interface parameters
> such as number of channels or MTU can cause a kernel panic with a NULL
> pointer dereference. This is due to netvsc_device_remove() being
> called and deallocating the channel ring buffers, which can then be
> accessed by netvsc_send_pkt() before they're allocated on calling
> netvsc_device_add()
>
> The patch fixes this problem by checking the channel state and returning
> ENODEV if not yet opened. We also move the call to hv_ringbuf_avail_percent()
> which may access the uninitialized ring buffer.
>
> Signed-off-by: Mohammed Gamal <mgamal@xxxxxxxxxx>

Based upon the discusion on this patch, it looks like this will be fixed
in some other way.