[PULL REQUEST] md updates for 3.13
From: NeilBrown
Date: Tue Nov 19 2013 - 18:28:19 EST
The following changes since commit 39cf275a1a18ba3c7eb9b986c5c9b35b57332798:
Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip (2013-11-12 10:20:12 +0900)
are available in the git repository at:
git://neil.brown.name/md/ tags/md/3.13
for you to fetch changes up to 60aaf933854511630e16be4efe0f96485e132de4:
md/raid5: Use conf->device_lock protect changing of multi-thread resources. (2013-11-19 15:19:18 +1100)
----------------------------------------------------------------
md update for 3.13.
Mostly optimisations and obscure bug fixes.
- raid5 gets less lock contention
- raid1 gets less contention between normal-io and resync-io
during resync.
----------------------------------------------------------------
Aurelien Jarno (1):
UAPI: include <asm/byteorder.h> in linux/raid/md_p.h
Bian Yu (1):
raid5: Retry R5_ReadNoMerge flag when hit a read error.
Joe Perches (1):
md: Convert use of typedef ctl_table to struct ctl_table
NeilBrown (5):
md: fix calculation of stacking limits on level change.
md/raid5.c: add proper locking to error path of raid5_start_reshape.
md: fix some places where mddev_lock return value is not checked.
md: use MD_RECOVERY_INTR instead of kthread_should_stop in resync thread.
md/raid5: avoid deadlock when raid5 array has unack badblocks during md_stop_writes.
Shaohua Li (3):
wait: add wait_event_cmd()
raid5: relieve lock contention in get_active_stripe()
raid5: relieve lock contention in get_active_stripe()
majianpeng (8):
raid5: Use slow_path to release stripe when mddev->thread is null
raid1: Add a field array_frozen to indicate whether raid in freeze state.
raid1: Replace raise_barrier/lower_barrier with freeze_array/unfreeze_array when reconfiguring the array.
raid1: Add some macros to make code clearly.
raid1: Rewrite the implementation of iobarrier.
md/raid5: For stripe with R5_ReadNoMerge, we replace REQ_FLUSH with REQ_NOMERGE.
md/raid5: Before freeing old multi-thread worker, it should flush them.
md/raid5: Use conf->device_lock protect changing of multi-thread resources.
drivers/md/md.c | 133 +++++++------
drivers/md/raid1.c | 162 +++++++++++++---
drivers/md/raid1.h | 15 ++
drivers/md/raid10.c | 6 +-
drivers/md/raid5.c | 420 +++++++++++++++++++++++++++++++----------
drivers/md/raid5.h | 16 +-
include/linux/wait.h | 25 +++
include/uapi/linux/raid/md_p.h | 1 +
8 files changed, 592 insertions(+), 186 deletions(-)
Attachment:
signature.asc
Description: PGP signature