[GIT PULL REQUEST] md updates for 3.20

From: NeilBrown
Date: Wed Feb 11 2015 - 22:20:59 EST



Hi Linus,
20 is a big number ... is it time for 4.0 yet :-)

anyway, herewith is my pull request for 3.20. It has been sitting in
-next for a while, and Dan's scripts only found 2 bugs - now fixed.

Thanks,
NeilBrown


The following changes since commit d95901433436aeb921eac58bfd8a2aa77f110384:

md/bitmap: fix a might_sleep() warning. (2015-02-02 17:08:03 +1100)

are available in the git repository at:

git://neil.brown.name/md tags/md/3.20

for you to fetch changes up to 53a6ab4d3f6d6dc87ec8f14998b4b5536ee2968c:

md/raid10: fix conversion from RAID0 to RAID10 (2015-02-12 14:09:57 +1100)

----------------------------------------------------------------
md updates for 3.20

- assorted locking changes so that access to /proc/mdstat
and much of /sys/block/mdXX/md/* is protected by a spinlock
rather than a mutex and will never block indefinitely.

- Make an 'if' condition in RAID5 - which has been implicated
in recent bugs - more readable.

- misc minor fixes

----------------------------------------------------------------
Hannes Reinecke (1):
md: wakeup thread upon rdev_dec_pending()

Jan Beulich (1):
x86/raid6: correctly check for assembler capabilities

Jes Sorensen (1):
md: do_release_stripe(): No need to call md_wakeup_thread() twice

NeilBrown (25):
md/raid5: separate large if clause out of fetch_block().
md/raid5: separate out the easy conditions in need_this_block.
md/raid5: need_this_block: start simplifying the last two conditions.
md/raid5: need_this_block: tidy/fix last condition.
md: rename mddev->write_lock to mddev->lock
md: make ->congested robust against personality changes.
md: make merge_bvec_fn more robust in face of personality changes.
md/linear: remove rcu protections in favour of suspend/resume
md: split detach operation out from ->stop.
md: rename ->stop to ->free
md: level_store: group all important changes into one place.
md: protect ->pers changes with mddev->lock
md/bitmap: protect clearing of ->bitmap by mddev->lock
md: remove need for mddev_lock() in md_seq_show()
md/raid5: use ->lock to protect accessing raid5 sysfs attributes.
md: remove mddev_lock() from md_attr_show()
md: remove mddev_lock from rdev_attr_show()
md: remove unnecessary 'buf' from get_bitmap_file.
md: tidy up set_bitmap_file
md: move GET_BITMAP_FILE ioctl out from mddev_lock.
md: minor cleanup in safe_delay_store.
md: use mddev->lock to protect updates to resync_{min,max}.
md: move mddev_lock and related to md.h
md: make reconfig_mutex optional for writes to md sysfs files.
md/raid10: fix conversion from RAID0 to RAID10

arch/x86/Makefile | 1 +
drivers/md/bitmap.c | 15 +-
drivers/md/dm-raid.c | 8 +-
drivers/md/faulty.c | 8 +-
drivers/md/linear.c | 67 ++--
drivers/md/md.c | 816 ++++++++++++++++++++++++++++++------------------
drivers/md/md.h | 57 +++-
drivers/md/multipath.c | 22 +-
drivers/md/raid0.c | 29 +-
drivers/md/raid1.c | 52 +--
drivers/md/raid1.h | 3 -
drivers/md/raid10.c | 49 +--
drivers/md/raid10.h | 3 -
drivers/md/raid5.c | 334 ++++++++++++--------
drivers/md/raid5.h | 1 -
lib/raid6/algos.c | 2 +-
lib/raid6/recov_avx2.c | 2 +-
lib/raid6/recov_ssse3.c | 6 +
18 files changed, 867 insertions(+), 608 deletions(-)

Attachment: pgp1F3muTnqxJ.pgp
Description: OpenPGP digital signature