From d76195db5a0780626e2742b184b86aeae60972bc Mon Sep 17 00:00:00 2001 From: Jesse Gross Date: Mon, 28 Feb 2011 14:26:39 -0800 Subject: datapath: Record upcall errors as lost packets. It's possible to encounter a few different errors when preparing to send a packet to userspace in queue_control_packet(). This ensures that if we encounter one of these problems, the issue is properly recorded as a lost packet. Signed-off-by: Jesse Gross Acked-by: Ben Pfaff --- datapath/datapath.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'datapath') diff --git a/datapath/datapath.c b/datapath/datapath.c index 733acad7..69b524c5 100644 --- a/datapath/datapath.c +++ b/datapath/datapath.c @@ -441,7 +441,11 @@ int dp_upcall(struct datapath *dp, struct sk_buff *skb, const struct dp_upcall_i } } - return queue_control_packets(dp, skb, upcall_info); + err = queue_control_packets(dp, skb, upcall_info); + if (err) + goto err; + + return 0; err_kfree_skb: kfree_skb(skb); -- cgit v1.2.3