• J
    io-wq: serialize hash clear with wakeup · d3e3c102
    Jens Axboe 提交于
    We need to ensure that we serialize the stalled and hash bits with the
    wait_queue wait handler, or we could be racing with someone modifying
    the hashed state after we find it busy, but before we then give up and
    wait for it to be cleared. This can cause random delays or stalls when
    handling buffered writes for many files, where some of these files cause
    hash collisions between the worker threads.
    
    Cc: stable@vger.kernel.org
    Reported-by: NDaniel Black <daniel@mariadb.org>
    Fixes: e941894e ("io-wq: make buffered file write hashed work map per-ctx")
    Signed-off-by: NJens Axboe <axboe@kernel.dk>
    d3e3c102
io-wq.c 32.3 KB