Lines Matching refs:cur_ops
316 static struct rcu_torture_ops *cur_ops; variable
343 started = cur_ops->get_gp_seq(); in rcu_read_delay()
349 completed = cur_ops->get_gp_seq(); in rcu_read_delay()
350 do_trace_rcu_torture_read(cur_ops->name, NULL, ts, in rcu_read_delay()
421 cur_ops->deferred_free(rp); in rcu_torture_cb()
728 if (!cur_ops->gp_diff) in rcutorture_seq_diff()
730 return cur_ops->gp_diff(new, old); in rcutorture_seq_diff()
735 return cur_ops == &tasks_ops; in torturing_tasks()
922 cur_ops->fqs(); in rcu_torture_fqs()
957 torture_type, cur_ops->name); in rcu_torture_writer()
962 if (gp_cond1 && cur_ops->get_state && cur_ops->cond_sync) { in rcu_torture_writer()
965 } else if (gp_cond && (!cur_ops->get_state || !cur_ops->cond_sync)) { in rcu_torture_writer()
968 if (gp_exp1 && cur_ops->exp_sync) { in rcu_torture_writer()
971 } else if (gp_exp && !cur_ops->exp_sync) { in rcu_torture_writer()
974 if (gp_normal1 && cur_ops->deferred_free) { in rcu_torture_writer()
977 } else if (gp_normal && !cur_ops->deferred_free) { in rcu_torture_writer()
980 if (gp_sync1 && cur_ops->sync) { in rcu_torture_writer()
983 } else if (gp_sync && !cur_ops->sync) { in rcu_torture_writer()
1021 cur_ops->deferred_free(old_rp); in rcu_torture_writer()
1025 cur_ops->exp_sync(); in rcu_torture_writer()
1030 gp_snap = cur_ops->get_state(); in rcu_torture_writer()
1036 cur_ops->cond_sync(gp_snap); in rcu_torture_writer()
1041 cur_ops->sync(); in rcu_torture_writer()
1068 !cur_ops->slow_gps && in rcu_torture_writer()
1108 if (cur_ops->cb_barrier != NULL && in rcu_torture_fakewriter()
1110 cur_ops->cb_barrier(); in rcu_torture_fakewriter()
1112 if (cur_ops->sync && torture_random(&rand) & 0x80) in rcu_torture_fakewriter()
1113 cur_ops->sync(); in rcu_torture_fakewriter()
1114 else if (cur_ops->exp_sync) in rcu_torture_fakewriter()
1115 cur_ops->exp_sync(); in rcu_torture_fakewriter()
1116 } else if (gp_normal && cur_ops->sync) { in rcu_torture_fakewriter()
1117 cur_ops->sync(); in rcu_torture_fakewriter()
1118 } else if (cur_ops->exp_sync) { in rcu_torture_fakewriter()
1119 cur_ops->exp_sync(); in rcu_torture_fakewriter()
1167 idxnew = cur_ops->readlock() << RCUTORTURE_RDR_SHIFT; in rcutorture_one_extend()
1181 cur_ops->readunlock(idxold >> RCUTORTURE_RDR_SHIFT); in rcutorture_one_extend()
1185 cur_ops->read_delay(trsp, rtrsp); in rcutorture_one_extend()
1203 mask = extendables & RCUTORTURE_MAX_EXTEND & cur_ops->extendables; in rcutorture_extend_mask_max()
1276 started = cur_ops->get_gp_seq(); in rcu_torture_one_read()
1297 completed = cur_ops->get_gp_seq(); in rcu_torture_one_read()
1299 do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu, in rcu_torture_one_read()
1339 if (cur_ops->call) { in rcu_torture_timer()
1343 cur_ops->call(rhp, rcu_torture_timer_cb); in rcu_torture_timer()
1364 if (irqreader && cur_ops->irq_capable) in rcu_torture_reader()
1368 if (irqreader && cur_ops->irq_capable) { in rcu_torture_reader()
1382 if (irqreader && cur_ops->irq_capable) { in rcu_torture_reader()
1473 if (cur_ops->stats) in rcu_torture_stats_print()
1474 cur_ops->stats(); in rcu_torture_stats_print()
1480 rcutorture_get_gp_data(cur_ops->ttype, in rcu_torture_stats_print()
1482 srcutorture_get_gp_data(cur_ops->ttype, srcu_ctlp, in rcu_torture_stats_print()
1518 rcu_torture_print_module_parms(struct rcu_torture_ops *cur_ops, const char *tag) in rcu_torture_print_module_parms() argument
1533 test_boost, cur_ops->can_boost, in rcu_torture_print_module_parms()
1652 cur_ops->call(&fcsp->rh, rcu_torture_fwd_prog_cb); in rcu_torture_fwd_prog_cb()
1721 n_launders_hist[i].launder_gp_seq = cur_ops->get_gp_seq(); in rcu_torture_fwd_cb_cr()
1780 if (cur_ops->call && cur_ops->sync && cur_ops->cb_barrier) { in rcu_torture_fwd_prog_nr()
1787 cur_ops->sync(); /* Later readers see above write. */ in rcu_torture_fwd_prog_nr()
1790 cur_ops->call(&fcs.rh, rcu_torture_fwd_prog_cb); in rcu_torture_fwd_prog_nr()
1793 gps = cur_ops->get_gp_seq(); in rcu_torture_fwd_prog_nr()
1794 sd = cur_ops->stall_dur() + 1; in rcu_torture_fwd_prog_nr()
1802 idx = cur_ops->readlock(); in rcu_torture_fwd_prog_nr()
1804 cur_ops->readunlock(idx); in rcu_torture_fwd_prog_nr()
1814 gps = rcutorture_seq_diff(cur_ops->get_gp_seq(), gps); in rcu_torture_fwd_prog_nr()
1820 cur_ops->sync(); /* Wait for running CB to complete. */ in rcu_torture_fwd_prog_nr()
1821 cur_ops->cb_barrier(); /* Wait for queued callbacks. */ in rcu_torture_fwd_prog_nr()
1850 if (!cur_ops->call) in rcu_torture_fwd_prog_cr()
1855 cur_ops->sync(); /* Later readers see above write. */ in rcu_torture_fwd_prog_cr()
1866 gps = cur_ops->get_gp_seq(); in rcu_torture_fwd_prog_cr()
1892 cur_ops->call(&rfcp->rh, rcu_torture_fwd_cb_cr); in rcu_torture_fwd_prog_cr()
1898 gps = rcutorture_seq_diff(cur_ops->get_gp_seq(), gps); in rcu_torture_fwd_prog_cr()
1899 cur_ops->cb_barrier(); /* Wait for callbacks to be invoked. */ in rcu_torture_fwd_prog_cr()
1982 if (!cur_ops->stall_dur || cur_ops->stall_dur() <= 0 || in rcu_torture_fwd_prog_init()
1983 cur_ops == &rcu_busted_ops) { in rcu_torture_fwd_prog_init()
2032 cur_ops->call(&rcu, rcu_torture_barrier_cbf); in rcu_torture_barrier_cbs()
2037 if (cur_ops->cb_barrier != NULL) in rcu_torture_barrier_cbs()
2038 cur_ops->cb_barrier(); in rcu_torture_barrier_cbs()
2063 cur_ops->cb_barrier(); /* Implies smp_mb() for wait_event(). */ in rcu_torture_barrier()
2087 if (cur_ops->call == NULL || cur_ops->cb_barrier == NULL) { in rcu_torture_barrier_init()
2090 torture_type, cur_ops->name); in rcu_torture_barrier_init()
2140 if (!(test_boost == 1 && cur_ops->can_boost) && test_boost != 2) in rcu_torture_can_boost()
2170 if (cur_ops->cb_barrier != NULL) in rcu_torture_cleanup()
2171 cur_ops->cb_barrier(); in rcu_torture_cleanup()
2174 if (!cur_ops) { in rcu_torture_cleanup()
2202 rcutorture_get_gp_data(cur_ops->ttype, &flags, &gp_seq); in rcu_torture_cleanup()
2203 srcutorture_get_gp_data(cur_ops->ttype, srcu_ctlp, &flags, &gp_seq); in rcu_torture_cleanup()
2205 cur_ops->name, gp_seq, flags); in rcu_torture_cleanup()
2215 if (cur_ops->cb_barrier != NULL) in rcu_torture_cleanup()
2216 cur_ops->cb_barrier(); in rcu_torture_cleanup()
2217 if (cur_ops->cleanup != NULL) in rcu_torture_cleanup()
2218 cur_ops->cleanup(); in rcu_torture_cleanup()
2250 rcu_torture_print_module_parms(cur_ops, "End of test: FAILURE"); in rcu_torture_cleanup()
2252 rcu_torture_print_module_parms(cur_ops, in rcu_torture_cleanup()
2255 rcu_torture_print_module_parms(cur_ops, "End of test: SUCCESS"); in rcu_torture_cleanup()
2319 if (cur_ops->sync && !(++n & 0xfff)) in rcutorture_sync()
2320 cur_ops->sync(); in rcutorture_sync()
2339 cur_ops = torture_ops[i]; in rcu_torture_init()
2340 if (strcmp(torture_type, cur_ops->name) == 0) in rcu_torture_init()
2352 cur_ops = NULL; in rcu_torture_init()
2355 if (cur_ops->fqs == NULL && fqs_duration != 0) { in rcu_torture_init()
2359 if (cur_ops->init) in rcu_torture_init()
2360 cur_ops->init(); in rcu_torture_init()
2369 rcu_torture_print_module_parms(cur_ops, "Start of test"); in rcu_torture_init()
2456 t = cur_ops->stall_dur ? cur_ops->stall_dur() : stutter * HZ; in rcu_torture_init()