summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Zhou2014-07-18 00:17:54 +0200
committerPravin B Shelar2014-07-24 18:37:22 +0200
commitd9e0ecb81417c34ef8c02a6880d23c362300cda0 (patch)
treede97db2013ec2a68fe663d855f067572bff9fa82
parentopenvswitch: Sample action without side effects (diff)
downloadkernel-qcow2-linux-d9e0ecb81417c34ef8c02a6880d23c362300cda0.tar.gz
kernel-qcow2-linux-d9e0ecb81417c34ef8c02a6880d23c362300cda0.tar.xz
kernel-qcow2-linux-d9e0ecb81417c34ef8c02a6880d23c362300cda0.zip
openvswitch: Add skb_clone NULL check for the sampling action.
Fix a bug where skb_clone() NULL check is missing in sample action implementation. Signed-off-by: Andy Zhou <azhou@nicira.com> Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
-rw-r--r--net/openvswitch/actions.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/openvswitch/actions.c b/net/openvswitch/actions.c
index 794a96f6b8d9..fe5cda0deb39 100644
--- a/net/openvswitch/actions.c
+++ b/net/openvswitch/actions.c
@@ -477,6 +477,8 @@ static int sample(struct datapath *dp, struct sk_buff *skb,
skb_get(skb);
} else {
sample_skb = skb_clone(skb, GFP_ATOMIC);
+ if (!sample_skb) /* Skip sample action when out of memory. */
+ return 0;
}
/* Note that do_execute_actions() never consumes skb.