Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
This commit is contained in:
@@ -265,8 +265,11 @@ void ovs_dp_process_received_packet(struct vport *p, struct sk_buff *skb)
|
||||
upcall.key = &key;
|
||||
upcall.userdata = NULL;
|
||||
upcall.portid = ovs_vport_find_upcall_portid(p, skb);
|
||||
ovs_dp_upcall(dp, skb, &upcall);
|
||||
consume_skb(skb);
|
||||
error = ovs_dp_upcall(dp, skb, &upcall);
|
||||
if (unlikely(error))
|
||||
kfree_skb(skb);
|
||||
else
|
||||
consume_skb(skb);
|
||||
stats_counter = &stats->n_missed;
|
||||
goto out;
|
||||
}
|
||||
@@ -404,7 +407,7 @@ static int queue_userspace_packet(struct datapath *dp, struct sk_buff *skb,
|
||||
{
|
||||
struct ovs_header *upcall;
|
||||
struct sk_buff *nskb = NULL;
|
||||
struct sk_buff *user_skb; /* to be queued to userspace */
|
||||
struct sk_buff *user_skb = NULL; /* to be queued to userspace */
|
||||
struct nlattr *nla;
|
||||
struct genl_info info = {
|
||||
.dst_sk = ovs_dp_get_net(dp)->genl_sock,
|
||||
@@ -494,9 +497,11 @@ static int queue_userspace_packet(struct datapath *dp, struct sk_buff *skb,
|
||||
((struct nlmsghdr *) user_skb->data)->nlmsg_len = user_skb->len;
|
||||
|
||||
err = genlmsg_unicast(ovs_dp_get_net(dp), user_skb, upcall_info->portid);
|
||||
user_skb = NULL;
|
||||
out:
|
||||
if (err)
|
||||
skb_tx_error(skb);
|
||||
kfree_skb(user_skb);
|
||||
kfree_skb(nskb);
|
||||
return err;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user