]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit - drivers/md/md.c
raid5-cache: add journal hot add/remove support
authorShaohua Li <shli@fb.com>
Sun, 20 Dec 2015 23:51:02 +0000 (10:51 +1100)
committerNeilBrown <neilb@suse.com>
Wed, 6 Jan 2016 00:39:57 +0000 (11:39 +1100)
commitf6b6ec5cfac306c1eea66f074050864efcb11851
tree68c0b7210bb1ce3f23bf59332c47ef35d09cf8eb
parent9ebc6ef188a0656f3620835f9be7fe22c1644c1c
raid5-cache: add journal hot add/remove support

Add support for journal disk hot add/remove. Mostly trival checks in md
part. The raid5 part is a little tricky. For hot-remove, we can't wait
pending write as it's called from raid5d. The wait will cause deadlock.
We simplily fail the hot-remove. A hot-remove retry can success
eventually since if journal disk is faulty all pending write will be
failed and finish. For hot-add, since an array supporting journal but
without journal disk will be marked read-only, we are safe to hot add
journal without stopping IO (should be read IO, while journal only
handles write IO).

Signed-off-by: Shaohua Li <shli@fb.com>
Signed-off-by: NeilBrown <neilb@suse.com>
drivers/md/md.c
drivers/md/raid5-cache.c
drivers/md/raid5.c