[1/3,Yakkety,SRU] virtio_net: Simplify call sites for virtio_net_hdr_{from, to}_skb().

Submitted by Jay Vosburgh on April 19, 2017, 11:41 p.m.

Details

Message ID 1492645307-30743-2-git-send-email-jay.vosburgh@canonical.com
State New
Headers show

Commit Message

Jay Vosburgh April 19, 2017, 11:41 p.m.
From: Jarno Rajahalme <jarno@ovn.org>

BugLink: https://bugs.launchpad.net/bugs/1683947

No point storing the return value of virtio_net_hdr_to_skb() or
virtio_net_hdr_from_skb() to a variable when the value is used only
once as a boolean in an immediately following if statement.

Signed-off-by: Jarno Rajahalme <jarno@ovn.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from 3e9e40e74753346218e8285cf1ecff9ef3a624c6)
Signed-off-by: Jay Vosburgh <jay.vosburgh@canonical.com>
---
 drivers/net/macvtap.c | 5 ++---
 drivers/net/tun.c     | 8 +++-----
 2 files changed, 5 insertions(+), 8 deletions(-)

Comments

Colin King April 20, 2017, 7:46 a.m.
On 20/04/17 00:41, Jay Vosburgh wrote:
> From: Jarno Rajahalme <jarno@ovn.org>
> 
> BugLink: https://bugs.launchpad.net/bugs/1683947
> 
> No point storing the return value of virtio_net_hdr_to_skb() or
> virtio_net_hdr_from_skb() to a variable when the value is used only
> once as a boolean in an immediately following if statement.
> 
> Signed-off-by: Jarno Rajahalme <jarno@ovn.org>
> Signed-off-by: David S. Miller <davem@davemloft.net>
> (cherry picked from 3e9e40e74753346218e8285cf1ecff9ef3a624c6)
> Signed-off-by: Jay Vosburgh <jay.vosburgh@canonical.com>
> ---
>  drivers/net/macvtap.c | 5 ++---
>  drivers/net/tun.c     | 8 +++-----
>  2 files changed, 5 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
> index 070e3290aa6e..5da9861ad79c 100644
> --- a/drivers/net/macvtap.c
> +++ b/drivers/net/macvtap.c
> @@ -821,9 +821,8 @@ static ssize_t macvtap_put_user(struct macvtap_queue *q,
>  		if (iov_iter_count(iter) < vnet_hdr_len)
>  			return -EINVAL;
>  
> -		ret = virtio_net_hdr_from_skb(skb, &vnet_hdr,
> -					      macvtap_is_little_endian(q));
> -		if (ret)
> +		if (virtio_net_hdr_from_skb(skb, &vnet_hdr,
> +					    macvtap_is_little_endian(q)))
>  			BUG();
>  
>  		if (copy_to_iter(&vnet_hdr, sizeof(vnet_hdr), iter) !=
> diff --git a/drivers/net/tun.c b/drivers/net/tun.c
> index 6f9df375c5d4..57f9e0ffa6ff 100644
> --- a/drivers/net/tun.c
> +++ b/drivers/net/tun.c
> @@ -1266,8 +1266,7 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile,
>  		return -EFAULT;
>  	}
>  
> -	err = virtio_net_hdr_to_skb(skb, &gso, tun_is_little_endian(tun));
> -	if (err) {
> +	if (virtio_net_hdr_to_skb(skb, &gso, tun_is_little_endian(tun))) {
>  		this_cpu_inc(tun->pcpu_stats->rx_frame_errors);
>  		kfree_skb(skb);
>  		return -EINVAL;
> @@ -1381,9 +1380,8 @@ static ssize_t tun_put_user(struct tun_struct *tun,
>  		if (iov_iter_count(iter) < vnet_hdr_sz)
>  			return -EINVAL;
>  
> -		ret = virtio_net_hdr_from_skb(skb, &gso,
> -					      tun_is_little_endian(tun));
> -		if (ret) {
> +		if (virtio_net_hdr_from_skb(skb, &gso,
> +					    tun_is_little_endian(tun))) {
>  			struct skb_shared_info *sinfo = skb_shinfo(skb);
>  			pr_err("unexpected GSO type: "
>  			       "0x%x, gso_size %d, hdr_len %d\n",
> 

Clean cherrypick and is just a code simplification, small change as a
prerequisite for next patches.

Acked-by: Colin Ian King <colin.king@canonical.com>

Patch hide | download patch | download mbox

diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
index 070e3290aa6e..5da9861ad79c 100644
--- a/drivers/net/macvtap.c
+++ b/drivers/net/macvtap.c
@@ -821,9 +821,8 @@  static ssize_t macvtap_put_user(struct macvtap_queue *q,
 		if (iov_iter_count(iter) < vnet_hdr_len)
 			return -EINVAL;
 
-		ret = virtio_net_hdr_from_skb(skb, &vnet_hdr,
-					      macvtap_is_little_endian(q));
-		if (ret)
+		if (virtio_net_hdr_from_skb(skb, &vnet_hdr,
+					    macvtap_is_little_endian(q)))
 			BUG();
 
 		if (copy_to_iter(&vnet_hdr, sizeof(vnet_hdr), iter) !=
diff --git a/drivers/net/tun.c b/drivers/net/tun.c
index 6f9df375c5d4..57f9e0ffa6ff 100644
--- a/drivers/net/tun.c
+++ b/drivers/net/tun.c
@@ -1266,8 +1266,7 @@  static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile,
 		return -EFAULT;
 	}
 
-	err = virtio_net_hdr_to_skb(skb, &gso, tun_is_little_endian(tun));
-	if (err) {
+	if (virtio_net_hdr_to_skb(skb, &gso, tun_is_little_endian(tun))) {
 		this_cpu_inc(tun->pcpu_stats->rx_frame_errors);
 		kfree_skb(skb);
 		return -EINVAL;
@@ -1381,9 +1380,8 @@  static ssize_t tun_put_user(struct tun_struct *tun,
 		if (iov_iter_count(iter) < vnet_hdr_sz)
 			return -EINVAL;
 
-		ret = virtio_net_hdr_from_skb(skb, &gso,
-					      tun_is_little_endian(tun));
-		if (ret) {
+		if (virtio_net_hdr_from_skb(skb, &gso,
+					    tun_is_little_endian(tun))) {
 			struct skb_shared_info *sinfo = skb_shinfo(skb);
 			pr_err("unexpected GSO type: "
 			       "0x%x, gso_size %d, hdr_len %d\n",