Lines Matching refs:pn
454 static void pktgen_run_all_threads(struct pktgen_net *pn);
455 static void pktgen_reset_all_threads(struct pktgen_net *pn);
456 static void pktgen_stop_all_threads_ifs(struct pktgen_net *pn);
488 struct pktgen_net *pn = net_generic(current->nsproxy->net_ns, pg_net_id); in pgctrl_write() local
505 pktgen_stop_all_threads_ifs(pn); in pgctrl_write()
508 pktgen_run_all_threads(pn); in pgctrl_write()
511 pktgen_reset_all_threads(pn); in pgctrl_write()
1946 static struct pktgen_dev *__pktgen_NN_threads(const struct pktgen_net *pn, in __pktgen_NN_threads() argument
1953 list_for_each_entry(t, &pn->pktgen_threads, th_list) { in __pktgen_NN_threads()
1969 static void pktgen_mark_device(const struct pktgen_net *pn, const char *ifname) in pktgen_mark_device() argument
1980 pkt_dev = __pktgen_NN_threads(pn, ifname, REMOVE); in pktgen_mark_device()
2001 static void pktgen_change_name(const struct pktgen_net *pn, struct net_device *dev) in pktgen_change_name() argument
2005 list_for_each_entry(t, &pn->pktgen_threads, th_list) { in pktgen_change_name()
2016 pn->proc_dir, in pktgen_change_name()
2032 struct pktgen_net *pn = net_generic(dev_net(dev), pg_net_id); in pktgen_device_event() local
2034 if (pn->pktgen_exiting) in pktgen_device_event()
2043 pktgen_change_name(pn, dev); in pktgen_device_event()
2047 pktgen_mark_device(pn, dev->name); in pktgen_device_event()
2054 static struct net_device *pktgen_dev_get_by_name(const struct pktgen_net *pn, in pktgen_dev_get_by_name() argument
2069 return dev_get_by_name(pn->net, b); in pktgen_dev_get_by_name()
2075 static int pktgen_setup_dev(const struct pktgen_net *pn, in pktgen_setup_dev() argument
2087 odev = pktgen_dev_get_by_name(pn, pkt_dev, ifname); in pktgen_setup_dev()
2327 struct pktgen_net *pn = net_generic(dev_net(pkt_dev->odev), pg_net_id); in get_ipsec_sa() local
2334 x = xfrm_state_lookup_byspi(pn->net, htonl(pkt_dev->spi), AF_INET); in get_ipsec_sa()
2337 x = xfrm_stateonly_find(pn->net, DUMMY_MARK, in get_ipsec_sa()
3108 static void pktgen_stop_all_threads_ifs(struct pktgen_net *pn) in pktgen_stop_all_threads_ifs() argument
3116 list_for_each_entry(t, &pn->pktgen_threads, th_list) in pktgen_stop_all_threads_ifs()
3150 static int pktgen_wait_all_threads_run(struct pktgen_net *pn) in pktgen_wait_all_threads_run() argument
3157 list_for_each_entry(t, &pn->pktgen_threads, th_list) { in pktgen_wait_all_threads_run()
3164 list_for_each_entry(t, &pn->pktgen_threads, th_list) in pktgen_wait_all_threads_run()
3171 static void pktgen_run_all_threads(struct pktgen_net *pn) in pktgen_run_all_threads() argument
3179 list_for_each_entry(t, &pn->pktgen_threads, th_list) in pktgen_run_all_threads()
3187 pktgen_wait_all_threads_run(pn); in pktgen_run_all_threads()
3190 static void pktgen_reset_all_threads(struct pktgen_net *pn) in pktgen_reset_all_threads() argument
3198 list_for_each_entry(t, &pn->pktgen_threads, th_list) in pktgen_reset_all_threads()
3206 pktgen_wait_all_threads_run(pn); in pktgen_reset_all_threads()
3717 static int __net_init pktgen_create_thread(int cpu, struct pktgen_net *pn) in pktgen_create_thread() argument
3735 list_add_tail(&t->th_list, &pn->pktgen_threads); in pktgen_create_thread()
3751 pe = proc_create_data(t->tsk->comm, 0600, pn->proc_dir, in pktgen_create_thread()
3762 t->net = pn; in pktgen_create_thread()
3825 struct pktgen_net *pn = net_generic(net, pg_net_id); in pg_net_init() local
3829 pn->net = net; in pg_net_init()
3830 INIT_LIST_HEAD(&pn->pktgen_threads); in pg_net_init()
3831 pn->pktgen_exiting = false; in pg_net_init()
3832 pn->proc_dir = proc_mkdir(PG_PROC_DIR, pn->net->proc_net); in pg_net_init()
3833 if (!pn->proc_dir) { in pg_net_init()
3837 pe = proc_create(PGCTRL, 0600, pn->proc_dir, &pktgen_fops); in pg_net_init()
3847 err = pktgen_create_thread(cpu, pn); in pg_net_init()
3853 if (list_empty(&pn->pktgen_threads)) { in pg_net_init()
3862 remove_proc_entry(PGCTRL, pn->proc_dir); in pg_net_init()
3864 remove_proc_entry(PG_PROC_DIR, pn->net->proc_net); in pg_net_init()
3870 struct pktgen_net *pn = net_generic(net, pg_net_id); in pg_net_exit() local
3876 pn->pktgen_exiting = true; in pg_net_exit()
3879 list_splice_init(&pn->pktgen_threads, &list); in pg_net_exit()
3890 remove_proc_entry(PGCTRL, pn->proc_dir); in pg_net_exit()
3891 remove_proc_entry(PG_PROC_DIR, pn->net->proc_net); in pg_net_exit()