summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZheng Da <zhengda1936@gmail.com>2010-02-07 05:36:02 +0100
committerZheng Da <zhengda1936@gmail.com>2010-02-07 05:36:02 +0100
commit5c576064e0e6826d6ed93337245730b065bbdc8a (patch)
tree29d9170bbf5556b58ac8129f217069355edaaccb
parent5f0efbbbd36294b663986399eef434327aea65e6 (diff)
free delivered packets.
-rw-r--r--libdde_linux26/include/dde26_net.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/libdde_linux26/include/dde26_net.h b/libdde_linux26/include/dde26_net.h
index 4545e7cc..204f37dd 100644
--- a/libdde_linux26/include/dde26_net.h
+++ b/libdde_linux26/include/dde26_net.h
@@ -27,8 +27,11 @@ linux_rx_callback l4dde26_register_rx_callback(linux_rx_callback cb);
static inline int l4dde26_do_rx_callback(struct sk_buff *s)
{
if (l4dde26_rx_callback != NULL) {
+ int ret;
skb_push(s, s->dev->hard_header_len);
- return l4dde26_rx_callback(s->data, s->len, s->dev);
+ ret = l4dde26_rx_callback(s->data, s->len, s->dev);
+ dev_kfree_skb_any(s);
+ return ret;
}
return 0;