Searched refs:user_skb (Results 1 - 1 of 1) sorted by relevance
/linux-4.1.27/net/openvswitch/ |
H A D | datapath.c | 406 struct sk_buff *user_skb = NULL; /* to be queued to userspace */ queue_userspace_packet() local 452 user_skb = genlmsg_new_unicast(len, &info, GFP_ATOMIC); queue_userspace_packet() 453 if (!user_skb) { queue_userspace_packet() 458 upcall = genlmsg_put(user_skb, 0, 0, &dp_packet_genl_family, queue_userspace_packet() 462 err = ovs_nla_put_key(key, key, OVS_PACKET_ATTR_KEY, false, user_skb); queue_userspace_packet() 466 __nla_put(user_skb, OVS_PACKET_ATTR_USERDATA, queue_userspace_packet() 471 nla = nla_nest_start(user_skb, OVS_PACKET_ATTR_EGRESS_TUN_KEY); queue_userspace_packet() 472 err = ovs_nla_put_egress_tunnel_key(user_skb, queue_userspace_packet() 475 nla_nest_end(user_skb, nla); queue_userspace_packet() 480 if (!(nla = nla_reserve(user_skb, OVS_PACKET_ATTR_PACKET, 0))) { queue_userspace_packet() 486 err = skb_zerocopy(user_skb, skb, skb->len, hlen); queue_userspace_packet() 492 size_t plen = NLA_ALIGN(user_skb->len) - user_skb->len; queue_userspace_packet() 495 memset(skb_put(user_skb, plen), 0, plen); queue_userspace_packet() 498 ((struct nlmsghdr *) user_skb->data)->nlmsg_len = user_skb->len; queue_userspace_packet() 500 err = genlmsg_unicast(ovs_dp_get_net(dp), user_skb, upcall_info->portid); queue_userspace_packet() 501 user_skb = NULL; queue_userspace_packet() 505 kfree_skb(user_skb); queue_userspace_packet()
|
Completed in 40 milliseconds