]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - include/net/x25.h
Merge tag 'platform-drivers-x86-v4.13-1' of git://git.infradead.org/linux-platform...
[karo-tx-linux.git] / include / net / x25.h
index 6d30a01d281d4faa824129cb3921dbc3a77e7da3..2609b57bd4597d6bb7035c923733e5076076467e 100644 (file)
@@ -11,6 +11,7 @@
 #define _X25_H 
 #include <linux/x25.h>
 #include <linux/slab.h>
+#include <linux/refcount.h>
 #include <net/sock.h>
 
 #define        X25_ADDR_LEN                    16
@@ -129,7 +130,7 @@ struct x25_route {
        struct x25_address      address;
        unsigned int            sigdigits;
        struct net_device       *dev;
-       atomic_t                refcnt;
+       refcount_t              refcnt;
 };
 
 struct x25_neigh {
@@ -141,7 +142,7 @@ struct x25_neigh {
        unsigned long           t20;
        struct timer_list       t20timer;
        unsigned long           global_facil_mask;
-       atomic_t                refcnt;
+       refcount_t              refcnt;
 };
 
 struct x25_sock {
@@ -242,12 +243,12 @@ void x25_link_free(void);
 /* x25_neigh.c */
 static __inline__ void x25_neigh_hold(struct x25_neigh *nb)
 {
-       atomic_inc(&nb->refcnt);
+       refcount_inc(&nb->refcnt);
 }
 
 static __inline__ void x25_neigh_put(struct x25_neigh *nb)
 {
-       if (atomic_dec_and_test(&nb->refcnt))
+       if (refcount_dec_and_test(&nb->refcnt))
                kfree(nb);
 }
 
@@ -265,12 +266,12 @@ void x25_route_free(void);
 
 static __inline__ void x25_route_hold(struct x25_route *rt)
 {
-       atomic_inc(&rt->refcnt);
+       refcount_inc(&rt->refcnt);
 }
 
 static __inline__ void x25_route_put(struct x25_route *rt)
 {
-       if (atomic_dec_and_test(&rt->refcnt))
+       if (refcount_dec_and_test(&rt->refcnt))
                kfree(rt);
 }