mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-24 21:54:34 -04:00
IPVS: netns awareness to ip_vs_sync
All global variables moved to struct ipvs, most external changes fixed (i.e. init_net removed) in sync_buf create + 4 replaced by sizeof(struct..) Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com> Acked-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: Simon Horman <horms@verge.net.au>
This commit is contained in:
parent
29c2026fd4
commit
f131315fa2
5 changed files with 240 additions and 191 deletions
|
|
@ -958,7 +958,7 @@ extern struct ip_vs_stats ip_vs_stats;
|
|||
extern const struct ctl_path net_vs_ctl_path[];
|
||||
extern int sysctl_ip_vs_sync_ver;
|
||||
|
||||
extern void ip_vs_sync_switch_mode(int mode);
|
||||
extern void ip_vs_sync_switch_mode(struct net *net, int mode);
|
||||
extern struct ip_vs_service *
|
||||
ip_vs_service_get(struct net *net, int af, __u32 fwmark, __u16 protocol,
|
||||
const union nf_inet_addr *vaddr, __be16 vport);
|
||||
|
|
@ -987,14 +987,10 @@ extern struct ip_vs_dest *ip_vs_try_bind_dest(struct ip_vs_conn *cp);
|
|||
* IPVS sync daemon data and function prototypes
|
||||
* (from ip_vs_sync.c)
|
||||
*/
|
||||
extern volatile int ip_vs_sync_state;
|
||||
extern volatile int ip_vs_master_syncid;
|
||||
extern volatile int ip_vs_backup_syncid;
|
||||
extern char ip_vs_master_mcast_ifn[IP_VS_IFNAME_MAXLEN];
|
||||
extern char ip_vs_backup_mcast_ifn[IP_VS_IFNAME_MAXLEN];
|
||||
extern int start_sync_thread(int state, char *mcast_ifn, __u8 syncid);
|
||||
extern int stop_sync_thread(int state);
|
||||
extern void ip_vs_sync_conn(struct ip_vs_conn *cp);
|
||||
extern int start_sync_thread(struct net *net, int state, char *mcast_ifn,
|
||||
__u8 syncid);
|
||||
extern int stop_sync_thread(struct net *net, int state);
|
||||
extern void ip_vs_sync_conn(struct net *net, struct ip_vs_conn *cp);
|
||||
extern int ip_vs_sync_init(void);
|
||||
extern void ip_vs_sync_cleanup(void);
|
||||
|
||||
|
|
|
|||
|
|
@ -74,6 +74,22 @@ struct netns_ipvs {
|
|||
struct list_head est_list; /* estimator list */
|
||||
spinlock_t est_lock;
|
||||
struct timer_list est_timer; /* Estimation timer */
|
||||
/* ip_vs_sync */
|
||||
struct list_head sync_queue;
|
||||
spinlock_t sync_lock;
|
||||
struct ip_vs_sync_buff *sync_buff;
|
||||
spinlock_t sync_buff_lock;
|
||||
struct sockaddr_in sync_mcast_addr;
|
||||
struct task_struct *master_thread;
|
||||
struct task_struct *backup_thread;
|
||||
int send_mesg_maxlen;
|
||||
int recv_mesg_maxlen;
|
||||
volatile int sync_state;
|
||||
volatile int master_syncid;
|
||||
volatile int backup_syncid;
|
||||
/* multicast interface name */
|
||||
char master_mcast_ifn[IP_VS_IFNAME_MAXLEN];
|
||||
char backup_mcast_ifn[IP_VS_IFNAME_MAXLEN];
|
||||
};
|
||||
|
||||
#endif /* IP_VS_H_ */
|
||||
|
|
|
|||
Loading…
Reference in a new issue