lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20150423161446.095dfebb@notabene.brown>
Date:	Thu, 23 Apr 2015 16:14:46 +1000
From:	NeilBrown <neilb@...e.de>
To:	Linus Torvalds <torvalds@...ux-foundation.org>
Cc:	lkml <linux-kernel@...r.kernel.org>,
	linux RAID <linux-raid@...r.kernel.org>,
	Eric Mei <eric.mei@...gate.com>,
	Fengguang Wu <fengguang.wu@...el.com>,
	Goldwyn Rodrigues <rgoldwyn@...e.de>,
	Guoqing Jiang <gqjiang@...e.com>,
	Heinz Mauelshagen <heinzm@...hat.com>,
	Lidong Zhong <lzhong@...e.com>,
	Markus Stockhausen <stockhausen@...logia.de>,
	Shaohua Li <shli@...ionio.com>,
	Stephen Rothwell <sfr@...b.auug.org.au>
Subject: [GIT PULL REQUEST] md updates for 4.1


Hi Linus,
 more updates that usual this time.  A few have performance impacts which
 should mostly be positive, but RAID5 (in particular) can be very work-load
 sensitive .... we'll have to wait and see.
 More detailed highlights below.

Thanks,
NeilBrown

The following changes since commit 47d68979cc968535cb87f3e5f2e6a3533ea48fbd:

  md/raid0: fix bug with chunksize not a power of 2. (2015-04-10 15:36:31 +1000)

are available in the git repository at:

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

for you to fetch changes up to 9ffc8f7cb9647b13dfe4d1ad0d5e1427bb8b46d6:

  md/raid5: don't do chunk aligned read on degraded array. (2015-04-22 08:00:43 +1000)

----------------------------------------------------------------
md updates for 4.1

Highlights:

- "experimental" code for managing md/raid1 across a cluster using
  DLM.  Code is not ready for general use and triggers a WARNING if used.
  However it is looking good and mostly done and having in mainline
  will help co-ordinate development.
- RAID5/6 can now batch multiple (4K wide) stripe_heads so as to
  handle a full (chunk wide) stripe as a single unit.
- RAID6 can now perform read-modify-write cycles which should
  help performance on larger arrays: 6 or more devices.
- RAID5/6 stripe cache now grows and shrinks dynamically.  The value
  set is used as a minimum.
- Resync is now allowed to go a little faster than the 'mininum' when
  there is competing IO.  How much faster depends on the speed of the
  devices, so the effective minimum should scale with device speed to
  some extent.

----------------------------------------------------------------
Eric Mei (1):
      md/raid5: don't do chunk aligned read on degraded array.

Goldwyn Rodrigues (31):
      md-cluster: Design Documentation
      Add number of nodes to bitmap structure for clustering
      Create a separate module for clustering support
      DLM lock and unlock functions
      Introduce md_cluster_operations to handle cluster functions
      Introduce md_cluster_info
      Return MD_SB_CLUSTERED if mddev is clustered
      Add node recovery callbacks
      Use separate bitmaps for each nodes in the cluster
      Lock bitmap while joining the cluster
      Gather on-going resync information of other nodes
      bitmap_create returns bitmap pointer
      Copy set bits from another slot
      Initiate recovery on node failure
      Perform resync for cluster node failure
      Communication Framework: Receiving
      Communication Framework: Sending functions
      metadata_update sends message to other nodes
      Reload superblock if METADATA_UPDATED is received
      Send RESYNCING while performing resync start/stop
      Resync start/Finish actions
      Suspend writes in RAID1 if within range
      Read from the first device when an area is resyncing
      Add new disk to clustered array
      md: Fix stray --cluster-confirm crash
      md: Fix bitmap offset calculations
      md: Export and rename kick_rdev_from_array
      md: Export and rename find_rdev_nr_rcu
      md-cluster: remove capabilities
      md: re-add a failed disk
      md-cluster: re-add capabilities

Guoqing Jiang (1):
      md-cluster: correct the num for comparison

Heinz Mauelshagen (1):
      md raid0: access mddev->queue (request queue member) conditionally because it is not set when accessed from dm-raid

Markus Stockhausen (6):
      md/raid6 algorithms: delta syndrome functions
      md/raid6 algorithms: improve test program
      md/raid6 algorithms: xor_syndrome() for generic int
      md/raid6 algorithms: xor_syndrome() for SSE2
      md/raid5: activate raid6 rmw feature
      md/raid5: introduce configuration option rmw_level

NeilBrown (10):
      md: fix error paths from bitmap_create.
      md/bitmap: fix incorrect DIV_ROUND_UP usage.
      Merge branch 'cluster' into for-next
      md: don't require sync_min to be a multiple of chunk_size.
      md: remove 'go_faster' option from ->sync_request()
      md: allow resync to go faster when there is competing IO.
      md/raid5: pass gfp_t arg to grow_one_stripe()
      md/raid5: move max_nr_stripes management into grow_one_stripe and drop_one_stripe
      md/raid5: change ->inactive_blocked to a bit-flag.
      md/raid5: allow the stripe_cache to grow and shrink.

Stephen Rothwell (1):
      md/bitmap: use sector_div for sector_t divisions

kbuild test robot (2):
      md: recover_bitmaps() can be static
      md/cluster: Communication Framework: fix semicolon.cocci warnings

shli@...nel.org (6):
      raid5: use flex_array for scribble data
      raid5: add a new flag to track if a stripe can be batched
      raid5: track overwrite disk count
      RAID5: batch adjacent full stripe write
      raid5: handle io error of batch list
      raid5: handle expansion/resync case with stripe batching

 Documentation/md-cluster.txt   | 176 ++++++++
 crypto/async_tx/async_pq.c     |  19 +-
 drivers/md/Kconfig             |  16 +
 drivers/md/Makefile            |   1 +
 drivers/md/bitmap.c            | 189 +++++++-
 drivers/md/bitmap.h            |  10 +-
 drivers/md/md-cluster.c        | 965 +++++++++++++++++++++++++++++++++++++++++
 drivers/md/md-cluster.h        |  29 ++
 drivers/md/md.c                | 382 +++++++++++++---
 drivers/md/md.h                |  26 +-
 drivers/md/raid0.c             |  48 +-
 drivers/md/raid1.c             |  29 +-
 drivers/md/raid10.c            |   8 +-
 drivers/md/raid5.c             | 826 +++++++++++++++++++++++++++++------
 drivers/md/raid5.h             |  59 ++-
 include/linux/async_tx.h       |   3 +
 include/linux/raid/pq.h        |   1 +
 include/uapi/linux/raid/md_p.h |   7 +
 include/uapi/linux/raid/md_u.h |   1 +
 lib/raid6/algos.c              |  41 +-
 lib/raid6/altivec.uc           |   1 +
 lib/raid6/avx2.c               |   3 +
 lib/raid6/int.uc               |  41 +-
 lib/raid6/mmx.c                |   2 +
 lib/raid6/neon.c               |   1 +
 lib/raid6/sse1.c               |   2 +
 lib/raid6/sse2.c               | 227 ++++++++++
 lib/raid6/test/test.c          |  51 ++-
 lib/raid6/tilegx.uc            |   1 +
 29 files changed, 2860 insertions(+), 305 deletions(-)
 create mode 100644 Documentation/md-cluster.txt
 create mode 100644 drivers/md/md-cluster.c
 create mode 100644 drivers/md/md-cluster.h

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ