• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/net/

Lines Matching refs:vnet_hdr

374 				     struct virtio_net_hdr *vnet_hdr)
377 if (vnet_hdr->gso_type != VIRTIO_NET_HDR_GSO_NONE) {
378 switch (vnet_hdr->gso_type & ~VIRTIO_NET_HDR_GSO_ECN) {
392 if (vnet_hdr->gso_type & VIRTIO_NET_HDR_GSO_ECN)
395 if (vnet_hdr->gso_size == 0)
399 if (vnet_hdr->flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) {
400 if (!skb_partial_csum_set(skb, vnet_hdr->csum_start,
401 vnet_hdr->csum_offset))
405 if (vnet_hdr->gso_type != VIRTIO_NET_HDR_GSO_NONE) {
406 skb_shinfo(skb)->gso_size = vnet_hdr->gso_size;
417 struct virtio_net_hdr *vnet_hdr)
419 memset(vnet_hdr, 0, sizeof(*vnet_hdr));
425 vnet_hdr->hdr_len = skb_headlen(skb);
426 vnet_hdr->gso_size = sinfo->gso_size;
428 vnet_hdr->gso_type = VIRTIO_NET_HDR_GSO_TCPV4;
430 vnet_hdr->gso_type = VIRTIO_NET_HDR_GSO_TCPV6;
432 vnet_hdr->gso_type = VIRTIO_NET_HDR_GSO_UDP;
436 vnet_hdr->gso_type |= VIRTIO_NET_HDR_GSO_ECN;
438 vnet_hdr->gso_type = VIRTIO_NET_HDR_GSO_NONE;
441 vnet_hdr->flags = VIRTIO_NET_HDR_F_NEEDS_CSUM;
442 vnet_hdr->csum_start = skb->csum_start -
444 vnet_hdr->csum_offset = skb->csum_offset;
460 struct virtio_net_hdr vnet_hdr = { 0 };
470 err = memcpy_fromiovecend((void *)&vnet_hdr, iv, 0,
471 sizeof(vnet_hdr));
474 if ((vnet_hdr.flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) &&
475 vnet_hdr.csum_start + vnet_hdr.csum_offset + 2 >
476 vnet_hdr.hdr_len)
477 vnet_hdr.hdr_len = vnet_hdr.csum_start +
478 vnet_hdr.csum_offset + 2;
480 if (vnet_hdr.hdr_len > len)
488 skb = macvtap_alloc_skb(&q->sk, NET_IP_ALIGN, len, vnet_hdr.hdr_len,
502 err = macvtap_skb_from_vnet_hdr(skb, &vnet_hdr);
552 struct virtio_net_hdr vnet_hdr;
557 ret = macvtap_skb_to_vnet_hdr(skb, &vnet_hdr);
561 if (memcpy_toiovecend(iv, (void *)&vnet_hdr, 0, sizeof(vnet_hdr)))