summaryrefslogtreecommitdiffstats
path: root/include/net/caif
diff options
context:
space:
mode:
authorsjur.brandeland@stericsson.com <sjur.brandeland@stericsson.com>2011-05-13 02:44:02 +0000
committerDavid S. Miller <davem@davemloft.net>2011-05-15 17:45:55 -0400
commitcb3cb423a0f3c627639535e5d87977ae662d779f (patch)
tree37fae151f44b5549bf1d4fd437dd070315d78cad /include/net/caif
parentf36214408470ecf6a052e76b72d05b2328b60fcf (diff)
downloadlinux-cb3cb423a0f3c627639535e5d87977ae662d779f.tar.gz
linux-cb3cb423a0f3c627639535e5d87977ae662d779f.tar.bz2
linux-cb3cb423a0f3c627639535e5d87977ae662d779f.zip
caif: Add ref-count to framing layer
Introduce Per-cpu reference for lower part of CAIF Stack. Before freeing payload is disabled, synchronize_rcu() is called, and then ref-count verified to be zero. Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/caif')
-rw-r--r--include/net/caif/cffrml.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/net/caif/cffrml.h b/include/net/caif/cffrml.h
index 4f126d777212..afac1a48cce7 100644
--- a/include/net/caif/cffrml.h
+++ b/include/net/caif/cffrml.h
@@ -7,12 +7,15 @@
#ifndef CFFRML_H_
#define CFFRML_H_
#include <net/caif/caif_layer.h>
+#include <linux/netdevice.h>
struct cffrml;
-struct cflayer *cffrml_create(u16 phyid, bool DoFCS);
+struct cflayer *cffrml_create(u16 phyid, bool use_fcs);
+void cffrml_free(struct cflayer *layr);
void cffrml_set_uplayer(struct cflayer *this, struct cflayer *up);
void cffrml_set_dnlayer(struct cflayer *this, struct cflayer *dn);
void cffrml_put(struct cflayer *layr);
void cffrml_hold(struct cflayer *layr);
+int cffrml_refcnt_read(struct cflayer *layr);
#endif /* CFFRML_H_ */