• Song Liu's avatar
    md/r5cache: disable write back for degraded array · 2e38a37f
    Song Liu authored
    write-back cache in degraded mode introduces corner cases to the array.
    Although we try to cover all these corner cases, it is safer to just
    disable write-back cache when the array is in degraded mode.
    
    In this patch, we disable writeback cache for degraded mode:
    1. On device failure, if the array enters degraded mode, raid5_error()
       will submit async job r5c_disable_writeback_async to disable
       writeback;
    2. In r5c_journal_mode_store(), it is invalid to enable writeback in
       degraded mode;
    3. In r5c_try_caching_write(), stripes with s->failed>0 will be handled
       in write-through mode.
    Signed-off-by: default avatarSong Liu <songliubraving@fb.com>
    Signed-off-by: default avatarShaohua Li <shli@fb.com>
    2e38a37f
raid5.c 231 KB