net: Introduce possible_net_t
[firefly-linux-kernel-4.4.55.git] / include / net / ip_vs.h
index a627fe690c19c7a2ecb5b6bfbb778455b2665f53..4e3731ee4eac802e24e5d7259d0e4db36566d2f6 100644 (file)
@@ -47,13 +47,13 @@ static inline struct net *skb_net(const struct sk_buff *skb)
         * Start with the most likely hit
         * End with BUG
         */
-       if (likely(skb->dev && skb->dev->nd_net))
+       if (likely(skb->dev && dev_net(skb->dev)))
                return dev_net(skb->dev);
        if (skb_dst(skb) && skb_dst(skb)->dev)
                return dev_net(skb_dst(skb)->dev);
        WARN(skb->sk, "Maybe skb_sknet should be used in %s() at line:%d\n",
                      __func__, __LINE__);
-       if (likely(skb->sk && skb->sk->sk_net))
+       if (likely(skb->sk && sock_net(skb->sk)))
                return sock_net(skb->sk);
        pr_err("There is no net ptr to find in the skb in %s() line:%d\n",
                __func__, __LINE__);
@@ -71,11 +71,11 @@ static inline struct net *skb_sknet(const struct sk_buff *skb)
 #ifdef CONFIG_NET_NS
 #ifdef CONFIG_IP_VS_DEBUG
        /* Start with the most likely hit */
-       if (likely(skb->sk && skb->sk->sk_net))
+       if (likely(skb->sk && sock_net(skb->sk)))
                return sock_net(skb->sk);
        WARN(skb->dev, "Maybe skb_net should be used instead in %s() line:%d\n",
                       __func__, __LINE__);
-       if (likely(skb->dev && skb->dev->nd_net))
+       if (likely(skb->dev && dev_net(skb->dev)))
                return dev_net(skb->dev);
        pr_err("There is no net ptr to find in the skb in %s() line:%d\n",
                __func__, __LINE__);
@@ -941,6 +941,7 @@ struct netns_ipvs {
        int                     sysctl_nat_icmp_send;
        int                     sysctl_pmtu_disc;
        int                     sysctl_backup_only;
+       int                     sysctl_conn_reuse_mode;
 
        /* ip_vs_lblc */
        int                     sysctl_lblc_expiration;
@@ -1059,6 +1060,11 @@ static inline int sysctl_backup_only(struct netns_ipvs *ipvs)
               ipvs->sysctl_backup_only;
 }
 
+static inline int sysctl_conn_reuse_mode(struct netns_ipvs *ipvs)
+{
+       return ipvs->sysctl_conn_reuse_mode;
+}
+
 #else
 
 static inline int sysctl_sync_threshold(struct netns_ipvs *ipvs)
@@ -1126,6 +1132,11 @@ static inline int sysctl_backup_only(struct netns_ipvs *ipvs)
        return 0;
 }
 
+static inline int sysctl_conn_reuse_mode(struct netns_ipvs *ipvs)
+{
+       return 1;
+}
+
 #endif
 
 /* IPVS core functions