diff options
author | sjur.brandeland@stericsson.com <sjur.brandeland@stericsson.com> | 2011-05-13 02:44:02 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-05-15 17:45:55 -0400 |
commit | cb3cb423a0f3c627639535e5d87977ae662d779f (patch) | |
tree | 37fae151f44b5549bf1d4fd437dd070315d78cad /include/net/caif | |
parent | f36214408470ecf6a052e76b72d05b2328b60fcf (diff) | |
download | linux-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.h | 5 |
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_ */ |