Message ID | 20250510013515.69636-1-ryotkkr98@gmail.com |
---|---|
State | New |
Headers | show |
Series | rslib: Add scheduling points during the test | expand |
diff --git a/lib/reed_solomon/test_rslib.c b/lib/reed_solomon/test_rslib.c index 75cb1adac..322d7b0a8 100644 --- a/lib/reed_solomon/test_rslib.c +++ b/lib/reed_solomon/test_rslib.c @@ -306,6 +306,8 @@ static void test_uc(struct rs_control *rs, int len, int errs, if (memcmp(r, c, len * sizeof(*r))) stat->dwrong++; + + cond_resched(); } stat->nwords += trials; } @@ -400,6 +402,8 @@ static void test_bc(struct rs_control *rs, int len, int errs, } else { stat->rfail++; } + + cond_resched(); } stat->nwords += trials; }
The test has been prone to softlockup but stayed unnoticed because of the printk calls during the test resets the soflockup watchdog by calling touch_nmi_watchdog(). With the commit b63e6f60eab4 ("serial: 8250: Switch to nbcon console"), the printk calls no longer suppress the softlockup and warnings can be observed more evidently that shows the test needs more scheduling points. Provide scheduling points by adding cond_resched() for each test iteration on their up to/beyond error correction capacity. Signed-off-by: Ryo Takakura <ryotkkr98@gmail.com> --- Hi! The discussion on how the printk was preventing the softlockup can be found here [0]. Sincerely, Ryo Takakura [0] https://lore.kernel.org/all/202501221029.fb0d574d-lkp@intel.com/ --- lib/reed_solomon/test_rslib.c | 4 ++++ 1 file changed, 4 insertions(+)