Re: [PATCH] net: tap: remove redundant assignments
From: Jakub Kicinski
Date: Mon Feb 22 2021 - 19:57:38 EST
On Mon, 22 Feb 2021 22:57:48 +0800 Tang Bin wrote:
> In the function tap_get_user, the assignment of 'err' at both places
> is redundant, so remove one.
>
> Signed-off-by: Tang Bin <tangbin@xxxxxxxxxxxxxxxxxxxx>
> ---
> drivers/net/tap.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/net/tap.c b/drivers/net/tap.c
> index 1f4bdd944..3e9c72738 100644
> --- a/drivers/net/tap.c
> +++ b/drivers/net/tap.c
> @@ -625,7 +625,7 @@ static ssize_t tap_get_user(struct tap_queue *q, void *msg_control,
> struct tap_dev *tap;
> unsigned long total_len = iov_iter_count(from);
> unsigned long len = total_len;
> - int err;
> + int err = -EINVAL;
> struct virtio_net_hdr vnet_hdr = { 0 };
> int vnet_hdr_len = 0;
> int copylen = 0;
> @@ -636,7 +636,6 @@ static ssize_t tap_get_user(struct tap_queue *q, void *msg_control,
> if (q->flags & IFF_VNET_HDR) {
> vnet_hdr_len = READ_ONCE(q->vnet_hdr_sz);
>
> - err = -EINVAL;
> if (len < vnet_hdr_len)
> goto err;
> len -= vnet_hdr_len;
> @@ -657,7 +656,6 @@ static ssize_t tap_get_user(struct tap_queue *q, void *msg_control,
> goto err;
> }
>
> - err = -EINVAL;
> if (unlikely(len < ETH_HLEN))
> goto err;
>
Assigning err close to the gotos makes the code more robust and easier
to read. No applying this, sorry.