rcutorture.c (40c1278aa7cd51d4f8627f7adc66aa73e01aff81) | rcutorture.c (3b6e1dd42317ec366dab3205f99280e2ab1ad85a) |
---|---|
1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * Read-Copy Update module-based torture test facility 4 * 5 * Copyright (C) IBM Corporation, 2005, 2006 6 * 7 * Authors: Paul E. McKenney <paulmck@linux.ibm.com> 8 * Josh Triplett <josh@joshtriplett.org> --- 765 unchanged lines hidden (view full) --- 774 .sync = synchronize_rcu_trivial, 775 .exp_sync = synchronize_rcu_trivial, 776 .fqs = NULL, 777 .stats = NULL, 778 .irq_capable = 1, 779 .name = "trivial" 780}; 781 | 1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * Read-Copy Update module-based torture test facility 4 * 5 * Copyright (C) IBM Corporation, 2005, 2006 6 * 7 * Authors: Paul E. McKenney <paulmck@linux.ibm.com> 8 * Josh Triplett <josh@joshtriplett.org> --- 765 unchanged lines hidden (view full) --- 774 .sync = synchronize_rcu_trivial, 775 .exp_sync = synchronize_rcu_trivial, 776 .fqs = NULL, 777 .stats = NULL, 778 .irq_capable = 1, 779 .name = "trivial" 780}; 781 |
782#ifdef CONFIG_TASKS_RCU 783 |
|
782/* 783 * Definitions for RCU-tasks torture testing. 784 */ 785 786static int tasks_torture_read_lock(void) 787{ 788 return 0; 789} --- 27 unchanged lines hidden (view full) --- 817 .gp_kthread_dbg = show_rcu_tasks_classic_gp_kthread, 818 .fqs = NULL, 819 .stats = NULL, 820 .irq_capable = 1, 821 .slow_gps = 1, 822 .name = "tasks" 823}; 824 | 784/* 785 * Definitions for RCU-tasks torture testing. 786 */ 787 788static int tasks_torture_read_lock(void) 789{ 790 return 0; 791} --- 27 unchanged lines hidden (view full) --- 819 .gp_kthread_dbg = show_rcu_tasks_classic_gp_kthread, 820 .fqs = NULL, 821 .stats = NULL, 822 .irq_capable = 1, 823 .slow_gps = 1, 824 .name = "tasks" 825}; 826 |
827#define TASKS_OPS &tasks_ops, 828 829#else // #ifdef CONFIG_TASKS_RCU 830 831#define TASKS_OPS 832 833#endif // #else #ifdef CONFIG_TASKS_RCU 834 835 |
|
825/* 826 * Definitions for rude RCU-tasks torture testing. 827 */ 828 829static void rcu_tasks_rude_torture_deferred_free(struct rcu_torture *p) 830{ 831 call_rcu_tasks_rude(&p->rtort_rcu, rcu_torture_cb); 832} --- 2270 unchanged lines hidden (view full) --- 3103{ 3104 long i; 3105 int cpu; 3106 int firsterr = 0; 3107 int flags = 0; 3108 unsigned long gp_seq = 0; 3109 static struct rcu_torture_ops *torture_ops[] = { 3110 &rcu_ops, &rcu_busted_ops, &srcu_ops, &srcud_ops, &busted_srcud_ops, | 836/* 837 * Definitions for rude RCU-tasks torture testing. 838 */ 839 840static void rcu_tasks_rude_torture_deferred_free(struct rcu_torture *p) 841{ 842 call_rcu_tasks_rude(&p->rtort_rcu, rcu_torture_cb); 843} --- 2270 unchanged lines hidden (view full) --- 3114{ 3115 long i; 3116 int cpu; 3117 int firsterr = 0; 3118 int flags = 0; 3119 unsigned long gp_seq = 0; 3120 static struct rcu_torture_ops *torture_ops[] = { 3121 &rcu_ops, &rcu_busted_ops, &srcu_ops, &srcud_ops, &busted_srcud_ops, |
3111 &tasks_ops, &tasks_rude_ops, TASKS_TRACING_OPS | 3122 TASKS_OPS &tasks_rude_ops, TASKS_TRACING_OPS |
3112 &trivial_ops, 3113 }; 3114 3115 if (!torture_init_begin(torture_type, verbose)) 3116 return -EBUSY; 3117 3118 /* Process args and tell the world that the torturer is on the job. */ 3119 for (i = 0; i < ARRAY_SIZE(torture_ops); i++) { --- 228 unchanged lines hidden --- | 3123 &trivial_ops, 3124 }; 3125 3126 if (!torture_init_begin(torture_type, verbose)) 3127 return -EBUSY; 3128 3129 /* Process args and tell the world that the torturer is on the job. */ 3130 for (i = 0; i < ARRAY_SIZE(torture_ops); i++) { --- 228 unchanged lines hidden --- |