Re: [PATCH] [v2] virtio_net: Remove BUG() to avoid machine dead

From: Leon Romanovsky
Date: Sun Jun 06 2021 - 00:48:24 EST


On Sat, Jun 05, 2021 at 11:31:00AM -0400, Xianting Tian wrote:
> From: Xianting Tian <xianting.tian@xxxxxxxxxxxxxxxxx>
>
> We should not directly BUG() when there is hdr error, it is
> better to output a print when such error happens. Currently,
> the caller of xmit_skb() already did it.
>
> Signed-off-by: Xianting Tian <xianting.tian@xxxxxxxxxxxxxxxxx>
> ---
> drivers/net/virtio_net.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
> index 9b6a4a8..7f11ea4 100644
> --- a/drivers/net/virtio_net.c
> +++ b/drivers/net/virtio_net.c
> @@ -1623,7 +1623,7 @@ static int xmit_skb(struct send_queue *sq, struct sk_buff *skb)
> if (virtio_net_hdr_from_skb(skb, &hdr->hdr,
> virtio_is_little_endian(vi->vdev), false,
> 0))
> - BUG();
> + return -EPROTO;

Yeah, as we discussed, BUG*() macros in non-core code that checks
in-kernel API better to be deleted.

Thanks,
Reviewed-by: Leon Romanovsky <leonro@xxxxxxxxxx>