From: David Woodhouse Date: Mon, 9 Aug 2010 09:36:44 +0000 (+0100) Subject: Merge branch 'async' of macbook:git/btrfs-unstable X-Git-Tag: 2.1b_release~7302^2^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2144381da478cc4aa3a29ee29b0c5e6ddaaced14;p=platform%2Fkernel%2Fkernel-mfld-blackbay.git Merge branch 'async' of macbook:git/btrfs-unstable Conflicts: drivers/md/Makefile lib/raid6/unroll.pl --- 2144381da478cc4aa3a29ee29b0c5e6ddaaced14 diff --cc crypto/async_tx/Kconfig index e28e276,e24aa80..5de2ed1 --- a/crypto/async_tx/Kconfig +++ b/crypto/async_tx/Kconfig @@@ -22,9 -22,18 +22,23 @@@ config ASYNC_RAID6_RECO tristate select ASYNC_CORE select ASYNC_PQ + select ASYNC_XOR + + config ASYNC_RAID6_TEST + tristate "Self test for hardware accelerated raid6 recovery" + depends on ASYNC_RAID6_RECOV + select ASYNC_MEMCPY + ---help--- + This is a one-shot self test that permutes through the + recovery of all the possible two disk failure scenarios for a + N-disk array. Recovery is performed with the asynchronous + raid6 recovery routines, and will optionally use an offload + engine if one is available. + + If unsure, say N. +config ASYNC_TX_DISABLE_PQ_VAL_DMA + bool + +config ASYNC_TX_DISABLE_XOR_VAL_DMA + bool diff --cc drivers/md/Makefile index e355e7f,c9b3a78..5e3aac4 --- a/drivers/md/Makefile +++ b/drivers/md/Makefile @@@ -48,72 -40,4 +40,3 @@@ obj-$(CONFIG_DM_ZERO) += dm-zero. ifeq ($(CONFIG_DM_UEVENT),y) dm-mod-objs += dm-uevent.o endif - - targets += raid6int1.c - $(obj)/raid6int1.c: UNROLL := 1 - $(obj)/raid6int1.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - targets += raid6int2.c - $(obj)/raid6int2.c: UNROLL := 2 - $(obj)/raid6int2.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - targets += raid6int4.c - $(obj)/raid6int4.c: UNROLL := 4 - $(obj)/raid6int4.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - targets += raid6int8.c - $(obj)/raid6int8.c: UNROLL := 8 - $(obj)/raid6int8.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - targets += raid6int16.c - $(obj)/raid6int16.c: UNROLL := 16 - $(obj)/raid6int16.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - targets += raid6int32.c - $(obj)/raid6int32.c: UNROLL := 32 - $(obj)/raid6int32.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - CFLAGS_raid6altivec1.o += $(altivec_flags) - targets += raid6altivec1.c - $(obj)/raid6altivec1.c: UNROLL := 1 - $(obj)/raid6altivec1.c: $(src)/raid6altivec.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - CFLAGS_raid6altivec2.o += $(altivec_flags) - targets += raid6altivec2.c - $(obj)/raid6altivec2.c: UNROLL := 2 - $(obj)/raid6altivec2.c: $(src)/raid6altivec.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - CFLAGS_raid6altivec4.o += $(altivec_flags) - targets += raid6altivec4.c - $(obj)/raid6altivec4.c: UNROLL := 4 - $(obj)/raid6altivec4.c: $(src)/raid6altivec.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - CFLAGS_raid6altivec8.o += $(altivec_flags) - targets += raid6altivec8.c - $(obj)/raid6altivec8.c: UNROLL := 8 - $(obj)/raid6altivec8.c: $(src)/raid6altivec.uc $(src)/unroll.awk FORCE - $(call if_changed,unroll) - - quiet_cmd_mktable = TABLE $@ - cmd_mktable = $(obj)/mktables > $@ || ( rm -f $@ && exit 1 ) -- - targets += raid6tables.c - $(obj)/raid6tables.c: $(obj)/mktables FORCE - $(call if_changed,mktable) diff --cc lib/raid6/Makefile index 0000000,b2fe4ba..19bf32d mode 000000,100644..100644 --- a/lib/raid6/Makefile +++ b/lib/raid6/Makefile @@@ -1,0 -1,78 +1,78 @@@ + obj-$(CONFIG_RAID6_PQ) += raid6_pq.o + + raid6_pq-y += raid6algos.o raid6recov.o raid6tables.o \ + raid6int1.o raid6int2.o raid6int4.o \ + raid6int8.o raid6int16.o raid6int32.o \ + raid6altivec1.o raid6altivec2.o raid6altivec4.o \ + raid6altivec8.o \ + raid6mmx.o raid6sse1.o raid6sse2.o + hostprogs-y += mktables + + quiet_cmd_unroll = UNROLL $@ - cmd_unroll = $(PERL) $(srctree)/$(src)/unroll.pl $(UNROLL) \ ++ cmd_unroll = $(AWK) -f$(srctree)/$(src)/unroll.awk -vN=$(UNROLL) \ + < $< > $@ || ( rm -f $@ && exit 1 ) + + ifeq ($(CONFIG_ALTIVEC),y) + altivec_flags := -maltivec -mabi=altivec + endif + + targets += raid6int1.c + $(obj)/raid6int1.c: UNROLL := 1 -$(obj)/raid6int1.c: $(src)/raid6int.uc $(src)/unroll.pl FORCE ++$(obj)/raid6int1.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + targets += raid6int2.c + $(obj)/raid6int2.c: UNROLL := 2 -$(obj)/raid6int2.c: $(src)/raid6int.uc $(src)/unroll.pl FORCE ++$(obj)/raid6int2.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + targets += raid6int4.c + $(obj)/raid6int4.c: UNROLL := 4 -$(obj)/raid6int4.c: $(src)/raid6int.uc $(src)/unroll.pl FORCE ++$(obj)/raid6int4.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + targets += raid6int8.c + $(obj)/raid6int8.c: UNROLL := 8 -$(obj)/raid6int8.c: $(src)/raid6int.uc $(src)/unroll.pl FORCE ++$(obj)/raid6int8.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + targets += raid6int16.c + $(obj)/raid6int16.c: UNROLL := 16 -$(obj)/raid6int16.c: $(src)/raid6int.uc $(src)/unroll.pl FORCE ++$(obj)/raid6int16.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + targets += raid6int32.c + $(obj)/raid6int32.c: UNROLL := 32 -$(obj)/raid6int32.c: $(src)/raid6int.uc $(src)/unroll.pl FORCE ++$(obj)/raid6int32.c: $(src)/raid6int.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + CFLAGS_raid6altivec1.o += $(altivec_flags) + targets += raid6altivec1.c + $(obj)/raid6altivec1.c: UNROLL := 1 -$(obj)/raid6altivec1.c: $(src)/raid6altivec.uc $(src)/unroll.pl FORCE ++$(obj)/raid6altivec1.c: $(src)/raid6altivec.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + CFLAGS_raid6altivec2.o += $(altivec_flags) + targets += raid6altivec2.c + $(obj)/raid6altivec2.c: UNROLL := 2 -$(obj)/raid6altivec2.c: $(src)/raid6altivec.uc $(src)/unroll.pl FORCE ++$(obj)/raid6altivec2.c: $(src)/raid6altivec.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + CFLAGS_raid6altivec4.o += $(altivec_flags) + targets += raid6altivec4.c + $(obj)/raid6altivec4.c: UNROLL := 4 -$(obj)/raid6altivec4.c: $(src)/raid6altivec.uc $(src)/unroll.pl FORCE ++$(obj)/raid6altivec4.c: $(src)/raid6altivec.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + CFLAGS_raid6altivec8.o += $(altivec_flags) + targets += raid6altivec8.c + $(obj)/raid6altivec8.c: UNROLL := 8 -$(obj)/raid6altivec8.c: $(src)/raid6altivec.uc $(src)/unroll.pl FORCE ++$(obj)/raid6altivec8.c: $(src)/raid6altivec.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + + quiet_cmd_mktable = TABLE $@ + cmd_mktable = $(obj)/mktables > $@ || ( rm -f $@ && exit 1 ) + + targets += raid6tables.c + $(obj)/raid6tables.c: $(obj)/mktables FORCE + $(call if_changed,mktable) diff --cc lib/raid6/unroll.awk index c6aa036,0000000..c6aa036 mode 100644,000000..100644 --- a/lib/raid6/unroll.awk +++ b/lib/raid6/unroll.awk