Lines Matching refs:t

218 #define   if_lock(t)           spin_lock(&(t->if_lock));  argument
219 #define if_unlock(t) spin_unlock(&(t->if_lock)); argument
449 static int pktgen_remove_device(struct pktgen_thread *t, struct pktgen_dev *i);
450 static int pktgen_add_device(struct pktgen_thread *t, const char *ifname);
451 static struct pktgen_dev *pktgen_find_dev(struct pktgen_thread *t,
458 static void pktgen_stop(struct pktgen_thread *t);
1809 struct pktgen_thread *t = seq->private; in pktgen_thread_show() local
1812 BUG_ON(!t); in pktgen_thread_show()
1817 list_for_each_entry_rcu(pkt_dev, &t->if_list, list) in pktgen_thread_show()
1823 list_for_each_entry_rcu(pkt_dev, &t->if_list, list) in pktgen_thread_show()
1827 if (t->result[0]) in pktgen_thread_show()
1828 seq_printf(seq, "\nResult: %s\n", t->result); in pktgen_thread_show()
1842 struct pktgen_thread *t = seq->private; in pktgen_thread_write() local
1880 if (!t) { in pktgen_thread_write()
1886 pg_result = &(t->result[0]); in pktgen_thread_write()
1900 ret = pktgen_add_device(t, f); in pktgen_thread_write()
1912 t->control |= T_REMDEVALL; in pktgen_thread_write()
1949 struct pktgen_thread *t; in __pktgen_NN_threads() local
1953 list_for_each_entry(t, &pn->pktgen_threads, th_list) { in __pktgen_NN_threads()
1954 pkt_dev = pktgen_find_dev(t, ifname, exact); in __pktgen_NN_threads()
1958 t->control |= T_REMDEV; in __pktgen_NN_threads()
2003 struct pktgen_thread *t; in pktgen_change_name() local
2005 list_for_each_entry(t, &pn->pktgen_threads, th_list) { in pktgen_change_name()
2009 list_for_each_entry_rcu(pkt_dev, &t->if_list, list) { in pktgen_change_name()
2242 struct hrtimer_sleeper t; in spin() local
2244 hrtimer_init_on_stack(&t.timer, CLOCK_MONOTONIC, HRTIMER_MODE_ABS); in spin()
2245 hrtimer_set_expires(&t.timer, spin_until); in spin()
2247 remaining = ktime_to_ns(hrtimer_expires_remaining(&t.timer)); in spin()
2261 hrtimer_init_sleeper(&t, current); in spin()
2264 hrtimer_start_expires(&t.timer, HRTIMER_MODE_ABS); in spin()
2266 if (likely(t.task)) in spin()
2269 hrtimer_cancel(&t.timer); in spin()
2270 } while (t.task && pkt_dev->running && !signal_pending(current)); in spin()
2360 __u16 t; in set_cur_queue_map() local
2362 t = prandom_u32() % in set_cur_queue_map()
2367 t = pkt_dev->cur_queue_map + 1; in set_cur_queue_map()
2368 if (t > pkt_dev->queue_map_max) in set_cur_queue_map()
2369 t = pkt_dev->queue_map_min; in set_cur_queue_map()
2371 pkt_dev->cur_queue_map = t; in set_cur_queue_map()
2489 __u32 t; in mod_cur_headers() local
2491 t = prandom_u32() % (imx - imn) + imn; in mod_cur_headers()
2493 t = ntohl(pkt_dev->cur_saddr); in mod_cur_headers()
2494 t++; in mod_cur_headers()
2495 if (t > imx) in mod_cur_headers()
2496 t = imn; in mod_cur_headers()
2499 pkt_dev->cur_saddr = htonl(t); in mod_cur_headers()
2508 __u32 t; in mod_cur_headers() local
2513 t = prandom_u32() % in mod_cur_headers()
2515 s = htonl(t); in mod_cur_headers()
2523 t = ntohl(pkt_dev->cur_daddr); in mod_cur_headers()
2524 t++; in mod_cur_headers()
2525 if (t > imx) { in mod_cur_headers()
2526 t = imn; in mod_cur_headers()
2528 pkt_dev->cur_daddr = htonl(t); in mod_cur_headers()
2559 __u32 t; in mod_cur_headers() local
2561 t = prandom_u32() % in mod_cur_headers()
2565 t = pkt_dev->cur_pkt_size + 1; in mod_cur_headers()
2566 if (t > pkt_dev->max_pkt_size) in mod_cur_headers()
2567 t = pkt_dev->min_pkt_size; in mod_cur_headers()
2569 pkt_dev->cur_pkt_size = t; in mod_cur_headers()
3075 static void pktgen_run(struct pktgen_thread *t) in pktgen_run() argument
3083 list_for_each_entry_rcu(pkt_dev, &t->if_list, list) { in pktgen_run()
3105 t->control &= ~(T_STOP); in pktgen_run()
3110 struct pktgen_thread *t; in pktgen_stop_all_threads_ifs() local
3116 list_for_each_entry(t, &pn->pktgen_threads, th_list) in pktgen_stop_all_threads_ifs()
3117 t->control |= T_STOP; in pktgen_stop_all_threads_ifs()
3122 static int thread_is_running(const struct pktgen_thread *t) in thread_is_running() argument
3127 list_for_each_entry_rcu(pkt_dev, &t->if_list, list) in thread_is_running()
3136 static int pktgen_wait_thread_run(struct pktgen_thread *t) in pktgen_wait_thread_run() argument
3138 while (thread_is_running(t)) { in pktgen_wait_thread_run()
3152 struct pktgen_thread *t; in pktgen_wait_all_threads_run() local
3157 list_for_each_entry(t, &pn->pktgen_threads, th_list) { in pktgen_wait_all_threads_run()
3158 sig = pktgen_wait_thread_run(t); in pktgen_wait_all_threads_run()
3164 list_for_each_entry(t, &pn->pktgen_threads, th_list) in pktgen_wait_all_threads_run()
3165 t->control |= (T_STOP); in pktgen_wait_all_threads_run()
3173 struct pktgen_thread *t; in pktgen_run_all_threads() local
3179 list_for_each_entry(t, &pn->pktgen_threads, th_list) in pktgen_run_all_threads()
3180 t->control |= (T_RUN); in pktgen_run_all_threads()
3192 struct pktgen_thread *t; in pktgen_reset_all_threads() local
3198 list_for_each_entry(t, &pn->pktgen_threads, th_list) in pktgen_reset_all_threads()
3199 t->control |= (T_REMDEVALL); in pktgen_reset_all_threads()
3259 static struct pktgen_dev *next_to_run(struct pktgen_thread *t) in next_to_run() argument
3264 list_for_each_entry_rcu(pkt_dev, &t->if_list, list) { in next_to_run()
3277 static void pktgen_stop(struct pktgen_thread *t) in pktgen_stop() argument
3285 list_for_each_entry_rcu(pkt_dev, &t->if_list, list) { in pktgen_stop()
3296 static void pktgen_rem_one_if(struct pktgen_thread *t) in pktgen_rem_one_if() argument
3303 list_for_each_safe(q, n, &t->if_list) { in pktgen_rem_one_if()
3312 pktgen_remove_device(t, cur); in pktgen_rem_one_if()
3318 static void pktgen_rem_all_ifs(struct pktgen_thread *t) in pktgen_rem_all_ifs() argument
3327 list_for_each_safe(q, n, &t->if_list) { in pktgen_rem_all_ifs()
3333 pktgen_remove_device(t, cur); in pktgen_rem_all_ifs()
3337 static void pktgen_rem_thread(struct pktgen_thread *t) in pktgen_rem_thread() argument
3340 remove_proc_entry(t->tsk->comm, t->net->proc_dir); in pktgen_rem_thread()
3505 struct pktgen_thread *t = arg; in pktgen_thread_worker() local
3507 int cpu = t->cpu; in pktgen_thread_worker()
3511 init_waitqueue_head(&t->queue); in pktgen_thread_worker()
3512 complete(&t->start_done); in pktgen_thread_worker()
3519 pkt_dev = next_to_run(t); in pktgen_thread_worker()
3521 if (unlikely(!pkt_dev && t->control == 0)) { in pktgen_thread_worker()
3522 if (t->net->pktgen_exiting) in pktgen_thread_worker()
3524 wait_event_interruptible_timeout(t->queue, in pktgen_thread_worker()
3525 t->control != 0, in pktgen_thread_worker()
3540 if (t->control & T_STOP) { in pktgen_thread_worker()
3541 pktgen_stop(t); in pktgen_thread_worker()
3542 t->control &= ~(T_STOP); in pktgen_thread_worker()
3545 if (t->control & T_RUN) { in pktgen_thread_worker()
3546 pktgen_run(t); in pktgen_thread_worker()
3547 t->control &= ~(T_RUN); in pktgen_thread_worker()
3550 if (t->control & T_REMDEVALL) { in pktgen_thread_worker()
3551 pktgen_rem_all_ifs(t); in pktgen_thread_worker()
3552 t->control &= ~(T_REMDEVALL); in pktgen_thread_worker()
3555 if (t->control & T_REMDEV) { in pktgen_thread_worker()
3556 pktgen_rem_one_if(t); in pktgen_thread_worker()
3557 t->control &= ~(T_REMDEV); in pktgen_thread_worker()
3563 pr_debug("%s stopping all device\n", t->tsk->comm); in pktgen_thread_worker()
3564 pktgen_stop(t); in pktgen_thread_worker()
3566 pr_debug("%s removing all device\n", t->tsk->comm); in pktgen_thread_worker()
3567 pktgen_rem_all_ifs(t); in pktgen_thread_worker()
3569 pr_debug("%s removing thread\n", t->tsk->comm); in pktgen_thread_worker()
3570 pktgen_rem_thread(t); in pktgen_thread_worker()
3575 static struct pktgen_dev *pktgen_find_dev(struct pktgen_thread *t, in pktgen_find_dev() argument
3582 list_for_each_entry_rcu(p, &t->if_list, list) in pktgen_find_dev()
3601 static int add_dev_to_thread(struct pktgen_thread *t, in add_dev_to_thread() argument
3612 if_lock(t); in add_dev_to_thread()
3621 pkt_dev->pg_thread = t; in add_dev_to_thread()
3622 list_add_rcu(&pkt_dev->list, &t->if_list); in add_dev_to_thread()
3625 if_unlock(t); in add_dev_to_thread()
3631 static int pktgen_add_device(struct pktgen_thread *t, const char *ifname) in pktgen_add_device() argument
3635 int node = cpu_to_node(t->cpu); in pktgen_add_device()
3639 pkt_dev = __pktgen_NN_threads(t->net, ifname, FIND); in pktgen_add_device()
3675 err = pktgen_setup_dev(t->net, pkt_dev, ifname); in pktgen_add_device()
3681 pkt_dev->entry = proc_create_data(ifname, 0600, t->net->proc_dir, in pktgen_add_device()
3705 return add_dev_to_thread(t, pkt_dev); in pktgen_add_device()
3719 struct pktgen_thread *t; in pktgen_create_thread() local
3723 t = kzalloc_node(sizeof(struct pktgen_thread), GFP_KERNEL, in pktgen_create_thread()
3725 if (!t) { in pktgen_create_thread()
3730 spin_lock_init(&t->if_lock); in pktgen_create_thread()
3731 t->cpu = cpu; in pktgen_create_thread()
3733 INIT_LIST_HEAD(&t->if_list); in pktgen_create_thread()
3735 list_add_tail(&t->th_list, &pn->pktgen_threads); in pktgen_create_thread()
3736 init_completion(&t->start_done); in pktgen_create_thread()
3739 t, in pktgen_create_thread()
3743 pr_err("kernel_thread() failed for cpu %d\n", t->cpu); in pktgen_create_thread()
3744 list_del(&t->th_list); in pktgen_create_thread()
3745 kfree(t); in pktgen_create_thread()
3749 t->tsk = p; in pktgen_create_thread()
3751 pe = proc_create_data(t->tsk->comm, 0600, pn->proc_dir, in pktgen_create_thread()
3752 &pktgen_thread_fops, t); in pktgen_create_thread()
3755 PG_PROC_DIR, t->tsk->comm); in pktgen_create_thread()
3757 list_del(&t->th_list); in pktgen_create_thread()
3758 kfree(t); in pktgen_create_thread()
3762 t->net = pn; in pktgen_create_thread()
3765 wait_for_completion(&t->start_done); in pktgen_create_thread()
3773 static void _rem_dev_from_if_list(struct pktgen_thread *t, in _rem_dev_from_if_list() argument
3779 if_lock(t); in _rem_dev_from_if_list()
3780 list_for_each_safe(q, n, &t->if_list) { in _rem_dev_from_if_list()
3785 if_unlock(t); in _rem_dev_from_if_list()
3788 static int pktgen_remove_device(struct pktgen_thread *t, in pktgen_remove_device() argument
3811 _rem_dev_from_if_list(t, pkt_dev); in pktgen_remove_device()
3871 struct pktgen_thread *t; in pg_net_exit() local
3883 t = list_entry(q, struct pktgen_thread, th_list); in pg_net_exit()
3884 list_del(&t->th_list); in pg_net_exit()
3885 kthread_stop(t->tsk); in pg_net_exit()
3886 put_task_struct(t->tsk); in pg_net_exit()
3887 kfree(t); in pg_net_exit()