int can_boost;
        int extendables;
        int slow_gps;
+       int no_pi_lock;
        const char *name;
 };
 
        .cb_barrier     = srcu_torture_barrier,
        .stats          = srcu_torture_stats,
        .irq_capable    = 1,
+       .no_pi_lock     = IS_ENABLED(CONFIG_TINY_SRCU),
        .name           = "srcu"
 };
 
        .cb_barrier     = srcu_torture_barrier,
        .stats          = srcu_torture_stats,
        .irq_capable    = 1,
+       .no_pi_lock     = IS_ENABLED(CONFIG_TINY_SRCU),
        .name           = "srcud"
 };
 
        .cb_barrier     = srcu_torture_barrier,
        .stats          = srcu_torture_stats,
        .irq_capable    = 1,
+       .no_pi_lock     = IS_ENABLED(CONFIG_TINY_SRCU),
        .extendables    = RCUTORTURE_MAX_EXTEND,
        .name           = "busted_srcud"
 };
                idxold2 = 0;
        }
        if (statesold & RCUTORTURE_RDR_RCU_1) {
-               bool lockit = !statesnew && !(torture_random(trsp) & 0xffff);
+               bool lockit;
 
+               lockit = !cur_ops->no_pi_lock && !statesnew && !(torture_random(trsp) & 0xffff);
                if (lockit)
                        raw_spin_lock_irqsave(¤t->pi_lock, flags);
                cur_ops->readunlock((idxold1 >> RCUTORTURE_RDR_SHIFT_1) & 0x1);