Merge tag 'md/4.5' of git://neil.brown.name/md
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 15 Jan 2016 20:28:00 +0000 (12:28 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 15 Jan 2016 20:28:00 +0000 (12:28 -0800)
Pull md updates from Neil Brown:
 "Mostly clustered-raid1 and raid5 journal updates.  one Y2038 fix and
  other minor stuff.

  One patch removes me from the MAINTAINERS file and adds a record of my
  md maintainership to Credits"

Many thanks to Neil, who has been around for a _looong_ time.

* tag 'md/4.5' of git://neil.brown.name/md: (26 commits)
  md/raid: only permit hot-add of compatible integrity profiles
  Remove myself as MD Maintainer, and add to Credits.
  raid5-cache: handle journal hotadd in quiesce
  MD: add journal with array suspended
  md: set MD_HAS_JOURNAL in correct places
  md: Remove 'ready' field from mddev.
  md: remove unnecesary md_new_event_inintr
  raid5: allow r5l_io_unit allocations to fail
  raid5-cache: use a mempool for the metadata block
  raid5-cache: use a bio_set
  raid5-cache: add journal hot add/remove support
  drivers: md: use ktime_get_real_seconds()
  md: avoid warning for 32-bit sector_t
  raid5-cache: free meta_page earlier
  raid5-cache: simplify r5l_move_io_unit_list
  md: update comment for md_allow_write
  md-cluster: update comments for MD_CLUSTER_SEND_LOCKED_ALREADY
  md-cluster: Protect communication with mutexes
  md-cluster: Defer MD reloading to mddev->thread
  md-cluster: update the documentation
  ...

1  2 
CREDITS
MAINTAINERS
drivers/md/md.c
drivers/md/md.h

diff --cc CREDITS
Simple merge
diff --cc MAINTAINERS
Simple merge
diff --cc drivers/md/md.c
Simple merge
diff --cc drivers/md/md.h
index 75b9aaacb03f197a2ae6b4ae25a716ee1d1bca53,a491e220e73800bcc9d0f243a00a7b67d910cf60..b5c4be73e6e425ead8cca186abdd100e735326e0
@@@ -162,8 -183,20 +162,9 @@@ enum flag_bits 
                                 * Usually, this device should be faster
                                 * than other devices in the array
                                 */
+       ClusterRemove,
  };
  
 -#define BB_LEN_MASK   (0x00000000000001FFULL)
 -#define BB_OFFSET_MASK        (0x7FFFFFFFFFFFFE00ULL)
 -#define BB_ACK_MASK   (0x8000000000000000ULL)
 -#define BB_MAX_LEN    512
 -#define BB_OFFSET(x)  (((x) & BB_OFFSET_MASK) >> 9)
 -#define BB_LEN(x)     (((x) & BB_LEN_MASK) + 1)
 -#define BB_ACK(x)     (!!((x) & BB_ACK_MASK))
 -#define BB_MAKE(a, l, ack) (((a)<<9) | ((l)-1) | ((u64)(!!(ack)) << 63))
 -
 -extern int md_is_badblock(struct badblocks *bb, sector_t s, int sectors,
 -                        sector_t *first_bad, int *bad_sectors);
  static inline int is_badblock(struct md_rdev *rdev, sector_t s, int sectors,
                              sector_t *first_bad, int *bad_sectors)
  {