aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorsjur.brandeland@stericsson.com <sjur.brandeland@stericsson.com>2011-05-12 22:44:02 -0400
committerDavid S. Miller <davem@davemloft.net>2011-05-15 17:45:55 -0400
commitcb3cb423a0f3c627639535e5d87977ae662d779f (patch)
tree37fae151f44b5549bf1d4fd437dd070315d78cad /include
parentf36214408470ecf6a052e76b72d05b2328b60fcf (diff)
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')
-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 @@
7#ifndef CFFRML_H_ 7#ifndef CFFRML_H_
8#define CFFRML_H_ 8#define CFFRML_H_
9#include <net/caif/caif_layer.h> 9#include <net/caif/caif_layer.h>
10#include <linux/netdevice.h>
10 11
11struct cffrml; 12struct cffrml;
12struct cflayer *cffrml_create(u16 phyid, bool DoFCS); 13struct cflayer *cffrml_create(u16 phyid, bool use_fcs);
14void cffrml_free(struct cflayer *layr);
13void cffrml_set_uplayer(struct cflayer *this, struct cflayer *up); 15void cffrml_set_uplayer(struct cflayer *this, struct cflayer *up);
14void cffrml_set_dnlayer(struct cflayer *this, struct cflayer *dn); 16void cffrml_set_dnlayer(struct cflayer *this, struct cflayer *dn);
15void cffrml_put(struct cflayer *layr); 17void cffrml_put(struct cflayer *layr);
16void cffrml_hold(struct cflayer *layr); 18void cffrml_hold(struct cflayer *layr);
19int cffrml_refcnt_read(struct cflayer *layr);
17 20
18#endif /* CFFRML_H_ */ 21#endif /* CFFRML_H_ */