X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=drivers%2Fnet%2Fusb%2Faqc111.c;h=7b8afa589a53c457ef07878f207ddbaafa668c54;hb=2ebf775f0541ae0d474836fa0cf3220e502f8e3e;hp=a017e9de2119d5f5163981b9777e13e94f523f86;hpb=34e0b94520301561390f566d56048b374c28c57e;p=platform%2Fkernel%2Flinux-starfive.git diff --git a/drivers/net/usb/aqc111.c b/drivers/net/usb/aqc111.c index a017e9d..7b8afa5 100644 --- a/drivers/net/usb/aqc111.c +++ b/drivers/net/usb/aqc111.c @@ -1079,17 +1079,17 @@ static int aqc111_rx_fixup(struct usbnet *dev, struct sk_buff *skb) u16 pkt_count = 0; u64 desc_hdr = 0; u16 vlan_tag = 0; - u32 skb_len = 0; + u32 skb_len; if (!skb) goto err; - if (skb->len == 0) + skb_len = skb->len; + if (skb_len < sizeof(desc_hdr)) goto err; - skb_len = skb->len; /* RX Descriptor Header */ - skb_trim(skb, skb->len - sizeof(desc_hdr)); + skb_trim(skb, skb_len - sizeof(desc_hdr)); desc_hdr = le64_to_cpup((u64 *)skb_tail_pointer(skb)); /* Check these packets */