]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - include/net/ipx.h
Merge tag 'platform-drivers-x86-v4.13-1' of git://git.infradead.org/linux-platform...
[karo-tx-linux.git] / include / net / ipx.h
index e5cff6811b302edf4eea7d89cf94b073c2a8cd49..af32b97b5ddd282ba3cea8171af20678a3864d48 100644 (file)
@@ -14,6 +14,7 @@
 #include <linux/ipx.h>
 #include <linux/list.h>
 #include <linux/slab.h>
+#include <linux/refcount.h>
 
 struct ipx_address {
        __be32  net;
@@ -54,7 +55,7 @@ struct ipx_interface {
        /* IPX address */
        __be32                  if_netnum;
        unsigned char           if_node[IPX_NODE_LEN];
-       atomic_t                refcnt;
+       refcount_t              refcnt;
 
        /* physical device info */
        struct net_device       *if_dev;
@@ -80,7 +81,7 @@ struct ipx_route {
        unsigned char           ir_routed;
        unsigned char           ir_router_node[IPX_NODE_LEN];
        struct list_head        node; /* node in ipx_routes list */
-       atomic_t                refcnt;
+       refcount_t              refcnt;
 };
 
 struct ipx_cb {
@@ -139,7 +140,7 @@ const char *ipx_device_name(struct ipx_interface *intrfc);
 
 static __inline__ void ipxitf_hold(struct ipx_interface *intrfc)
 {
-       atomic_inc(&intrfc->refcnt);
+       refcount_inc(&intrfc->refcnt);
 }
 
 void ipxitf_down(struct ipx_interface *intrfc);
@@ -157,18 +158,18 @@ int ipxrtr_ioctl(unsigned int cmd, void __user *arg);
 
 static __inline__ void ipxitf_put(struct ipx_interface *intrfc)
 {
-       if (atomic_dec_and_test(&intrfc->refcnt))
+       if (refcount_dec_and_test(&intrfc->refcnt))
                ipxitf_down(intrfc);
 }
 
 static __inline__ void ipxrtr_hold(struct ipx_route *rt)
 {
-               atomic_inc(&rt->refcnt);
+               refcount_inc(&rt->refcnt);
 }
 
 static __inline__ void ipxrtr_put(struct ipx_route *rt)
 {
-               if (atomic_dec_and_test(&rt->refcnt))
+               if (refcount_dec_and_test(&rt->refcnt))
                                        kfree(rt);
 }
 #endif /* _NET_INET_IPX_H_ */