mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-26 15:40:53 +07:00
ipvs: Pass ipvs not net to __ip_vs_service_find
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
ba61f39034
commit
bb2e2a8c95
@ -357,10 +357,9 @@ static int ip_vs_svc_unhash(struct ip_vs_service *svc)
|
||||
* Get service by {netns, proto,addr,port} in the service table.
|
||||
*/
|
||||
static inline struct ip_vs_service *
|
||||
__ip_vs_service_find(struct net *net, int af, __u16 protocol,
|
||||
__ip_vs_service_find(struct netns_ipvs *ipvs, int af, __u16 protocol,
|
||||
const union nf_inet_addr *vaddr, __be16 vport)
|
||||
{
|
||||
struct netns_ipvs *ipvs = net_ipvs(net);
|
||||
unsigned int hash;
|
||||
struct ip_vs_service *svc;
|
||||
|
||||
@ -426,7 +425,7 @@ ip_vs_service_find(struct net *net, int af, __u32 fwmark, __u16 protocol,
|
||||
* Check the table hashed by <protocol,addr,port>
|
||||
* for "full" addressed entries
|
||||
*/
|
||||
svc = __ip_vs_service_find(net, af, protocol, vaddr, vport);
|
||||
svc = __ip_vs_service_find(ipvs, af, protocol, vaddr, vport);
|
||||
|
||||
if (svc == NULL
|
||||
&& protocol == IPPROTO_TCP
|
||||
@ -436,7 +435,7 @@ ip_vs_service_find(struct net *net, int af, __u32 fwmark, __u16 protocol,
|
||||
* Check if ftp service entry exists, the packet
|
||||
* might belong to FTP data connections.
|
||||
*/
|
||||
svc = __ip_vs_service_find(net, af, protocol, vaddr, FTPPORT);
|
||||
svc = __ip_vs_service_find(ipvs, af, protocol, vaddr, FTPPORT);
|
||||
}
|
||||
|
||||
if (svc == NULL
|
||||
@ -444,7 +443,7 @@ ip_vs_service_find(struct net *net, int af, __u32 fwmark, __u16 protocol,
|
||||
/*
|
||||
* Check if the catch-all port (port zero) exists
|
||||
*/
|
||||
svc = __ip_vs_service_find(net, af, protocol, vaddr, 0);
|
||||
svc = __ip_vs_service_find(ipvs, af, protocol, vaddr, 0);
|
||||
}
|
||||
|
||||
out:
|
||||
@ -2411,7 +2410,7 @@ do_ip_vs_set_ctl(struct sock *sk, int cmd, void __user *user, unsigned int len)
|
||||
/* Lookup the exact service by <protocol, addr, port> or fwmark */
|
||||
rcu_read_lock();
|
||||
if (usvc.fwmark == 0)
|
||||
svc = __ip_vs_service_find(net, usvc.af, usvc.protocol,
|
||||
svc = __ip_vs_service_find(ipvs, usvc.af, usvc.protocol,
|
||||
&usvc.addr, usvc.port);
|
||||
else
|
||||
svc = __ip_vs_svc_fwm_find(ipvs, usvc.af, usvc.fwmark);
|
||||
@ -2551,7 +2550,7 @@ __ip_vs_get_dest_entries(struct net *net, const struct ip_vs_get_dests *get,
|
||||
if (get->fwmark)
|
||||
svc = __ip_vs_svc_fwm_find(ipvs, AF_INET, get->fwmark);
|
||||
else
|
||||
svc = __ip_vs_service_find(net, AF_INET, get->protocol, &addr,
|
||||
svc = __ip_vs_service_find(ipvs, AF_INET, get->protocol, &addr,
|
||||
get->port);
|
||||
rcu_read_unlock();
|
||||
|
||||
@ -2745,7 +2744,7 @@ do_ip_vs_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
|
||||
if (entry->fwmark)
|
||||
svc = __ip_vs_svc_fwm_find(ipvs, AF_INET, entry->fwmark);
|
||||
else
|
||||
svc = __ip_vs_service_find(net, AF_INET,
|
||||
svc = __ip_vs_service_find(ipvs, AF_INET,
|
||||
entry->protocol, &addr,
|
||||
entry->port);
|
||||
rcu_read_unlock();
|
||||
@ -3094,7 +3093,7 @@ static int ip_vs_genl_parse_service(struct net *net,
|
||||
if (usvc->fwmark)
|
||||
svc = __ip_vs_svc_fwm_find(ipvs, usvc->af, usvc->fwmark);
|
||||
else
|
||||
svc = __ip_vs_service_find(net, usvc->af, usvc->protocol,
|
||||
svc = __ip_vs_service_find(ipvs, usvc->af, usvc->protocol,
|
||||
&usvc->addr, usvc->port);
|
||||
rcu_read_unlock();
|
||||
*ret_svc = svc;
|
||||
|
Loading…
Reference in New Issue
Block a user