mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-30 02:06:49 +07:00
ipvs: Pass ipvs not net into register_app and unregister_app
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Acked-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: Simon Horman <horms@verge.net.au>
This commit is contained in:
parent
a4dd0360c6
commit
19648918fb
@ -517,9 +517,9 @@ struct ip_vs_protocol {
|
||||
const struct sk_buff *skb,
|
||||
struct ip_vs_proto_data *pd);
|
||||
|
||||
int (*register_app)(struct net *net, struct ip_vs_app *inc);
|
||||
int (*register_app)(struct netns_ipvs *ipvs, struct ip_vs_app *inc);
|
||||
|
||||
void (*unregister_app)(struct net *net, struct ip_vs_app *inc);
|
||||
void (*unregister_app)(struct netns_ipvs *ipvs, struct ip_vs_app *inc);
|
||||
|
||||
int (*app_conn_bind)(struct ip_vs_conn *cp);
|
||||
|
||||
|
@ -78,6 +78,7 @@ static int
|
||||
ip_vs_app_inc_new(struct net *net, struct ip_vs_app *app, __u16 proto,
|
||||
__u16 port)
|
||||
{
|
||||
struct netns_ipvs *ipvs = net_ipvs(net);
|
||||
struct ip_vs_protocol *pp;
|
||||
struct ip_vs_app *inc;
|
||||
int ret;
|
||||
@ -107,7 +108,7 @@ ip_vs_app_inc_new(struct net *net, struct ip_vs_app *app, __u16 proto,
|
||||
}
|
||||
}
|
||||
|
||||
ret = pp->register_app(net, inc);
|
||||
ret = pp->register_app(ipvs, inc);
|
||||
if (ret)
|
||||
goto out;
|
||||
|
||||
@ -129,13 +130,14 @@ ip_vs_app_inc_new(struct net *net, struct ip_vs_app *app, __u16 proto,
|
||||
static void
|
||||
ip_vs_app_inc_release(struct net *net, struct ip_vs_app *inc)
|
||||
{
|
||||
struct netns_ipvs *ipvs = net_ipvs(net);
|
||||
struct ip_vs_protocol *pp;
|
||||
|
||||
if (!(pp = ip_vs_proto_get(inc->protocol)))
|
||||
return;
|
||||
|
||||
if (pp->unregister_app)
|
||||
pp->unregister_app(net, inc);
|
||||
pp->unregister_app(ipvs, inc);
|
||||
|
||||
IP_VS_DBG(9, "%s App %s:%u unregistered\n",
|
||||
pp->name, inc->name, ntohs(inc->port));
|
||||
|
@ -487,13 +487,12 @@ static inline __u16 sctp_app_hashkey(__be16 port)
|
||||
& SCTP_APP_TAB_MASK;
|
||||
}
|
||||
|
||||
static int sctp_register_app(struct net *net, struct ip_vs_app *inc)
|
||||
static int sctp_register_app(struct netns_ipvs *ipvs, struct ip_vs_app *inc)
|
||||
{
|
||||
struct ip_vs_app *i;
|
||||
__u16 hash;
|
||||
__be16 port = inc->port;
|
||||
int ret = 0;
|
||||
struct netns_ipvs *ipvs = net_ipvs(net);
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(ipvs, IPPROTO_SCTP);
|
||||
|
||||
hash = sctp_app_hashkey(port);
|
||||
@ -511,9 +510,9 @@ static int sctp_register_app(struct net *net, struct ip_vs_app *inc)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void sctp_unregister_app(struct net *net, struct ip_vs_app *inc)
|
||||
static void sctp_unregister_app(struct netns_ipvs *ipvs, struct ip_vs_app *inc)
|
||||
{
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(net_ipvs(net), IPPROTO_SCTP);
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(ipvs, IPPROTO_SCTP);
|
||||
|
||||
atomic_dec(&pd->appcnt);
|
||||
list_del_rcu(&inc->p_list);
|
||||
|
@ -595,13 +595,12 @@ static inline __u16 tcp_app_hashkey(__be16 port)
|
||||
}
|
||||
|
||||
|
||||
static int tcp_register_app(struct net *net, struct ip_vs_app *inc)
|
||||
static int tcp_register_app(struct netns_ipvs *ipvs, struct ip_vs_app *inc)
|
||||
{
|
||||
struct ip_vs_app *i;
|
||||
__u16 hash;
|
||||
__be16 port = inc->port;
|
||||
int ret = 0;
|
||||
struct netns_ipvs *ipvs = net_ipvs(net);
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(ipvs, IPPROTO_TCP);
|
||||
|
||||
hash = tcp_app_hashkey(port);
|
||||
@ -621,9 +620,9 @@ static int tcp_register_app(struct net *net, struct ip_vs_app *inc)
|
||||
|
||||
|
||||
static void
|
||||
tcp_unregister_app(struct net *net, struct ip_vs_app *inc)
|
||||
tcp_unregister_app(struct netns_ipvs *ipvs, struct ip_vs_app *inc)
|
||||
{
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(net_ipvs(net), IPPROTO_TCP);
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(ipvs, IPPROTO_TCP);
|
||||
|
||||
atomic_dec(&pd->appcnt);
|
||||
list_del_rcu(&inc->p_list);
|
||||
|
@ -365,13 +365,12 @@ static inline __u16 udp_app_hashkey(__be16 port)
|
||||
}
|
||||
|
||||
|
||||
static int udp_register_app(struct net *net, struct ip_vs_app *inc)
|
||||
static int udp_register_app(struct netns_ipvs *ipvs, struct ip_vs_app *inc)
|
||||
{
|
||||
struct ip_vs_app *i;
|
||||
__u16 hash;
|
||||
__be16 port = inc->port;
|
||||
int ret = 0;
|
||||
struct netns_ipvs *ipvs = net_ipvs(net);
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(ipvs, IPPROTO_UDP);
|
||||
|
||||
hash = udp_app_hashkey(port);
|
||||
@ -391,9 +390,9 @@ static int udp_register_app(struct net *net, struct ip_vs_app *inc)
|
||||
|
||||
|
||||
static void
|
||||
udp_unregister_app(struct net *net, struct ip_vs_app *inc)
|
||||
udp_unregister_app(struct netns_ipvs *ipvs, struct ip_vs_app *inc)
|
||||
{
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(net_ipvs(net), IPPROTO_UDP);
|
||||
struct ip_vs_proto_data *pd = ip_vs_proto_data_get(ipvs, IPPROTO_UDP);
|
||||
|
||||
atomic_dec(&pd->appcnt);
|
||||
list_del_rcu(&inc->p_list);
|
||||
|
Loading…
Reference in New Issue
Block a user