Skip to content

Commit

Permalink
net: CONFIG_NET_NS reduction
Browse files Browse the repository at this point in the history
Use read_pnet() and write_pnet() to reduce number of ifdef CONFIG_NET_NS

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Eric Dumazet authored and David S. Miller committed Jun 2, 2010
1 parent c6b20d9 commit c2d9ba9
Show file tree
Hide file tree
Showing 7 changed files with 11 additions and 55 deletions.
6 changes: 1 addition & 5 deletions include/linux/netdevice.h
Original file line number Diff line number Diff line change
Expand Up @@ -1087,11 +1087,7 @@ static inline void netdev_for_each_tx_queue(struct net_device *dev,
static inline
struct net *dev_net(const struct net_device *dev)
{
#ifdef CONFIG_NET_NS
return dev->nd_net;
#else
return &init_net;
#endif
return read_pnet(&dev->nd_net);
}

static inline
Expand Down
15 changes: 2 additions & 13 deletions include/net/cfg80211.h
Original file line number Diff line number Diff line change
Expand Up @@ -1330,26 +1330,15 @@ struct wiphy {
char priv[0] __attribute__((__aligned__(NETDEV_ALIGN)));
};

#ifdef CONFIG_NET_NS
static inline struct net *wiphy_net(struct wiphy *wiphy)
{
return wiphy->_net;
}

static inline void wiphy_net_set(struct wiphy *wiphy, struct net *net)
{
wiphy->_net = net;
}
#else
static inline struct net *wiphy_net(struct wiphy *wiphy)
{
return &init_net;
return read_pnet(&wiphy->_net);
}

static inline void wiphy_net_set(struct wiphy *wiphy, struct net *net)
{
write_pnet(&wiphy->_net, net);
}
#endif

/**
* wiphy_priv - return priv from wiphy
Expand Down
15 changes: 2 additions & 13 deletions include/net/genetlink.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,26 +68,15 @@ struct genl_info {
#endif
};

#ifdef CONFIG_NET_NS
static inline struct net *genl_info_net(struct genl_info *info)
{
return info->_net;
return read_pnet(&info->_net);
}

static inline void genl_info_net_set(struct genl_info *info, struct net *net)
{
info->_net = net;
write_pnet(&info->_net, net);
}
#else
static inline struct net *genl_info_net(struct genl_info *info)
{
return &init_net;
}

static inline void genl_info_net_set(struct genl_info *info, struct net *net)
{
}
#endif

/**
* struct genl_ops - generic netlink operations
Expand Down
6 changes: 1 addition & 5 deletions include/net/netfilter/nf_conntrack.h
Original file line number Diff line number Diff line change
Expand Up @@ -152,11 +152,7 @@ extern struct net init_net;

static inline struct net *nf_ct_net(const struct nf_conn *ct)
{
#ifdef CONFIG_NET_NS
return ct->ct_net;
#else
return &init_net;
#endif
return read_pnet(&ct->ct_net);
}

/* Alter reply tuple (maybe alter helper). */
Expand Down
10 changes: 2 additions & 8 deletions include/net/sock.h
Original file line number Diff line number Diff line change
Expand Up @@ -1724,19 +1724,13 @@ static inline void sk_eat_skb(struct sock *sk, struct sk_buff *skb, int copied_e
static inline
struct net *sock_net(const struct sock *sk)
{
#ifdef CONFIG_NET_NS
return sk->sk_net;
#else
return &init_net;
#endif
return read_pnet(&sk->sk_net);
}

static inline
void sock_net_set(struct sock *sk, struct net *net)
{
#ifdef CONFIG_NET_NS
sk->sk_net = net;
#endif
write_pnet(&sk->sk_net, net);
}

/*
Expand Down
6 changes: 1 addition & 5 deletions net/ipv6/addrlabel.c
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,7 @@ static struct ip6addrlbl_table
static inline
struct net *ip6addrlbl_net(const struct ip6addrlbl_entry *lbl)
{
#ifdef CONFIG_NET_NS
return lbl->lbl_net;
#else
return &init_net;
#endif
return read_pnet(&lbl->lbl_net);
}

/*
Expand Down
8 changes: 2 additions & 6 deletions net/netfilter/nf_conntrack_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -619,9 +619,7 @@ struct nf_conn *nf_conntrack_alloc(struct net *net, u16 zone,
ct->tuplehash[IP_CT_DIR_REPLY].hnnode.pprev = NULL;
/* Don't set timer yet: wait for confirmation */
setup_timer(&ct->timeout, death_by_timeout, (unsigned long)ct);
#ifdef CONFIG_NET_NS
ct->ct_net = net;
#endif
write_pnet(&ct->ct_net, net);
#ifdef CONFIG_NF_CONNTRACK_ZONES
if (zone) {
struct nf_conntrack_zone *nf_ct_zone;
Expand Down Expand Up @@ -1363,9 +1361,7 @@ static int nf_conntrack_init_init_net(void)
goto err_extend;
#endif
/* Set up fake conntrack: to never be deleted, not in any hashes */
#ifdef CONFIG_NET_NS
nf_conntrack_untracked.ct_net = &init_net;
#endif
write_pnet(&nf_conntrack_untracked.ct_net, &init_net);
atomic_set(&nf_conntrack_untracked.ct_general.use, 1);
/* - and look it like as a confirmed connection */
set_bit(IPS_CONFIRMED_BIT, &nf_conntrack_untracked.status);
Expand Down

0 comments on commit c2d9ba9

Please sign in to comment.