|
@@ -1252,8 +1252,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;
|
|
@@ -1367,9 +1366,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",
|