Hi Linus,
here is a revised pull request for md updates for 2.6.36.
To the previous patches (which are unchanged) it adds some work by
David Woodhouse which moves the RAID6 computations out of drivers/md/
and places them in /lib so they can be used by other code -
e.g. btrfs.
The RAID6 code is completely unchanged (it was already accessed under
the async-crypto interface so not changes are need to the API). Only
it's location and the fact that it can be a stand alone module
(rather than being in the same module as the rest of md/raid6) has
changed.
Thanks,
NeilBrown
The following changes since commit 45d7f32c7a43cbb9592886d38190e379e2eb2226:
Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile (2010-08-08 10:10:11 -0700)
are available in the git repository at:
git://neil.brown.name/md for-linus
Dan Williams (1):
md: move revalidate_disk() back outside open_mutex
David Woodhouse (3):
md: Factor out RAID6 algorithms into lib/
async_tx: Move ASYNC_RAID6_TEST option to crypto/async_tx/, fix dependencies
Merge branch 'async' of macbook:git/btrfs-unstable
NeilBrown (22):
md: reduce dependence on sysfs.
md/raid5: factor out code for changing size of stripe cache.
md/raid5: ensure we create a unique name for kmem_cache when mddev has no gendisk
md: be more careful setting MD_CHANGE_CLEAN
md: split out md_rdev_init
md: export various start/stop interfaces
md: add support for raising dm events.
raid5: Don't set read-ahead when there is no queue
md/raid5: export is_congested test
md/raid5: add simple plugging infrastructure.
md/plug: optionally use plugger to unplug an array during resync/recovery.
md/raid5: export raid5 unplugging interface.
md/bitmap: white space clean up and similar.
md/bitmap: reduce dependence on sysfs.
md/bitmap: clean up plugging calls.
md/bitmap: optimise scanning of empty ...Hmm. Why "lib/raid6/raid6sse2.c" and friends? Why "raid6" twice? You
don't mean "raid6+1" (mirrored raid6 ;), so why not just remove the
second "raid6", and call it "lib/raid6/sse2.c"
But I pulled. Just in case there was some logic to the duplication.
Linus
--
No particular reason -- I just wanted the initial move to be as simple as possible. Since it all gets built into raid6_pq.ko and we never see these filenames even in module names, it does make sense to rename them. If Neil approves, git://git.infradead.org/~dwmw2/libraid-2.6.git The userspace test/ (neé raid6test/) directory doesn't build, but it didn't before. At least I fixed the awk incantations. -- David Woodhouse Open Source Technology Centre David.Woodhouse@intel.com Intel Corporation --
On Wed, 11 Aug 2010 00:23:31 +0100
Looks good,thanks. There are a few comments still say "raid6xxx.c" and there
is a .h file (raid6x86.h) which you didn't rename but probably should be.
Yep, there is some bit rot in there. Fixed that too.
Linus, you can get all this from
git://neil.brown.name/md for-linus
Thanks.
The following changes since commit 3d30701b58970425e1d45994d6cb82f828924fdd:
Merge branch 'for-linus' of git://neil.brown.name/md (2010-08-10 15:38:19 -0700)
are available in the git repository at:
git://neil.brown.name/md for-linus
David Woodhouse (1):
Rename raid6 files now they're in a 'raid6' directory.
NeilBrown (2):
Make lib/raid6/test build correctly.
Further tidyup of raid6 naming in lib/raid6
include/linux/raid/pq.h | 2 +
lib/raid6/Makefile | 81 ++++++++++++++---------------
lib/raid6/{raid6algos.c => algos.c} | 4 +-
lib/raid6/{raid6altivec.uc => altivec.uc} | 0
lib/raid6/{raid6int.uc => int.uc} | 0
lib/raid6/{raid6mmx.c => mmx.c} | 6 +-
lib/raid6/raid6test/Makefile | 75 --------------------------
lib/raid6/{raid6recov.c => recov.c} | 2 +-
lib/raid6/{raid6sse1.c => sse1.c} | 6 +-
lib/raid6/{raid6sse2.c => sse2.c} | 4 +-
lib/raid6/test/Makefile | 72 +++++++++++++++++++++++++
lib/raid6/{raid6test => test}/test.c | 0
lib/raid6/{raid6x86.h => x86.h} | 2 +-
13 files changed, 125 insertions(+), 129 deletions(-)
rename lib/raid6/{raid6algos.c => algos.c} (99%)
rename lib/raid6/{raid6altivec.uc => altivec.uc} (100%)
rename lib/raid6/{raid6int.uc => int.uc} (100%)
rename lib/raid6/{raid6mmx.c => mmx.c} (98%)
delete mode 100644 lib/raid6/raid6test/Makefile
rename lib/raid6/{raid6recov.c => recov.c} (99%)
rename lib/raid6/{raid6sse1.c => sse1.c} (98%)
rename lib/raid6/{raid6sse2.c => sse2.c} (99%)
create mode 100644 ...