Thread (3 messages) 3 messages, 3 authors, 2021-12-17

Re: [PATCH v2] lib/raid6: Reduce high latency by using migrate instead of preempt

From: Daniel Vacek <hidden>
Date: 2021-12-17 21:55:55
Also in: linux-rt-users, lkml

NACK. This is a BUG.

--nX

On Fri, Dec 17, 2021 at 1:02 AM Song Liu [off-list ref] wrote:
On Thu, Dec 16, 2021 at 1:27 AM Yajun Deng [off-list ref] wrote:
quoted
We found an abnormally high latency when executing modprobe raid6_pq, the
latency is greater than 1.2s when CONFIG_PREEMPT_VOLUNTARY=y, greater than
67ms when CONFIG_PREEMPT=y, and greater than 16ms when CONFIG_PREEMPT_RT=y.

This is caused by ksoftirqd fail to scheduled due to disable preemption,
this time is too long and unreasonable.

Reduce high latency by using migrate_disabl()/emigrate_enable() instead of
preempt_disable()/preempt_enable().

How to reproduce:
 - Install cyclictest
     sudo apt install rt-tests
 - Run cyclictest example in one terminal
     sudo cyclictest -S -p 95 -d 0 -i 1000 -D 24h -m
 - Modprobe raid6_pq in another terminal
      sudo modprobe raid6_pq

This patch beneficial for CONFIG_PREEMPT=y and CONFIG_PREEMPT_RT=y, but
no effect for CONFIG_PREEMPT_VOLUNTARY=y.

Fixes: fe5cbc6e06c7 ("md/raid6 algorithms: delta syndrome functions")
Fixes: cc4589ebfae6 ("Rename raid6 files now they're in a 'raid6' directory.")
Link: https://lore.kernel.org/linux-raid/b06c5e3ef3413f12a2c2b2a241005af9@linux.dev/T/#t (local)
Signed-off-by: Yajun Deng <redacted>
Updated the patch and CC'ed stable. It should make to LTS kernels.

Thanks,
Song
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help