Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6ac121d7 authored by Eric W. Biederman's avatar Eric W. Biederman Committed by Simon Horman
Browse files

ipvs: Pass ipvs not net to start_sync_thread

parent df04ffb7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1449,7 +1449,7 @@ static inline void ip_vs_dest_put_and_free(struct ip_vs_dest *dest)
/* IPVS sync daemon data and function prototypes
 * (from ip_vs_sync.c)
 */
int start_sync_thread(struct net *net, struct ipvs_sync_daemon_cfg *cfg,
int start_sync_thread(struct netns_ipvs *ipvs, struct ipvs_sync_daemon_cfg *cfg,
		      int state);
int stop_sync_thread(struct net *net, int state);
void ip_vs_sync_conn(struct net *net, struct ip_vs_conn *cp, int pkts);
+2 −2
Original line number Diff line number Diff line
@@ -2350,7 +2350,7 @@ do_ip_vs_set_ctl(struct sock *sk, int cmd, void __user *user, unsigned int len)
			cfg.syncid = dm->syncid;
			rtnl_lock();
			mutex_lock(&ipvs->sync_mutex);
			ret = start_sync_thread(net, &cfg, dm->state);
			ret = start_sync_thread(ipvs, &cfg, dm->state);
			mutex_unlock(&ipvs->sync_mutex);
			rtnl_unlock();
		} else {
@@ -3432,7 +3432,7 @@ static int ip_vs_genl_new_daemon(struct netns_ipvs *ipvs, struct nlattr **attrs)

	rtnl_lock();
	mutex_lock(&ipvs->sync_mutex);
	ret = start_sync_thread(ipvs->net, &c,
	ret = start_sync_thread(ipvs, &c,
				nla_get_u32(attrs[IPVS_DAEMON_ATTR_STATE]));
	mutex_unlock(&ipvs->sync_mutex);
	rtnl_unlock();
+5 −6
Original line number Diff line number Diff line
@@ -1778,13 +1778,12 @@ static int sync_thread_backup(void *data)
}


int start_sync_thread(struct net *net, struct ipvs_sync_daemon_cfg *c,
int start_sync_thread(struct netns_ipvs *ipvs, struct ipvs_sync_daemon_cfg *c,
		      int state)
{
	struct ip_vs_sync_thread_data *tinfo;
	struct task_struct **array = NULL, *task;
	struct socket *sock;
	struct netns_ipvs *ipvs = net_ipvs(net);
	struct net_device *dev;
	char *name;
	int (*threadfn)(void *data);
@@ -1811,7 +1810,7 @@ int start_sync_thread(struct net *net, struct ipvs_sync_daemon_cfg *c,
	if (!c->mcast_ttl)
		c->mcast_ttl = 1;

	dev = __dev_get_by_name(net, c->mcast_ifn);
	dev = __dev_get_by_name(ipvs->net, c->mcast_ifn);
	if (!dev) {
		pr_err("Unknown mcast interface: %s\n", c->mcast_ifn);
		return -ENODEV;
@@ -1873,9 +1872,9 @@ int start_sync_thread(struct net *net, struct ipvs_sync_daemon_cfg *c,
	tinfo = NULL;
	for (id = 0; id < count; id++) {
		if (state == IP_VS_STATE_MASTER)
			sock = make_send_sock(net, id);
			sock = make_send_sock(ipvs->net, id);
		else
			sock = make_receive_sock(net, id);
			sock = make_receive_sock(ipvs->net, id);
		if (IS_ERR(sock)) {
			result = PTR_ERR(sock);
			goto outtinfo;
@@ -1883,7 +1882,7 @@ int start_sync_thread(struct net *net, struct ipvs_sync_daemon_cfg *c,
		tinfo = kmalloc(sizeof(*tinfo), GFP_KERNEL);
		if (!tinfo)
			goto outsocket;
		tinfo->net = net;
		tinfo->net = ipvs->net;
		tinfo->sock = sock;
		if (state == IP_VS_STATE_BACKUP) {
			tinfo->buf = kmalloc(ipvs->bcfg.sync_maxlen,