Hi Neil, Today's linux-next merge of the md tree got conflicts in lib/raid6/Makefile and lib/raid6/test/Makefile between commit 7d11965ddb9b ("lib/raid6: add ARM-NEON accelerated syndrome calculation") from the arm tree and commit ae77cbc1e7b9 ("RAID: add tilegx SIMD implementation of raid6") from the md tree. I fixed it up (see below) and can carry the fix as necessary (no action is required). -- Cheers, Stephen Rothwell sfr@canb.auug.org.au diff --cc lib/raid6/Makefile index b462578,e5e9021..0000000 --- a/lib/raid6/Makefile +++ b/lib/raid6/Makefile @@@ -5,7 -5,7 +5,8 @@@ raid6_pq-y += algos.o recov.o tables.o raid6_pq-$(CONFIG_X86) += recov_ssse3.o recov_avx2.o mmx.o sse1.o sse2.o avx2.o raid6_pq-$(CONFIG_ALTIVEC) += altivec1.o altivec2.o altivec4.o altivec8.o +raid6_pq-$(CONFIG_KERNEL_MODE_NEON) += neon.o neon1.o neon2.o neon4.o neon8.o + raid6_pq-$(CONFIG_TILEGX) += tilegx8.o hostprogs-y += mktables @@@ -86,28 -71,9 +87,32 @@@ $(obj)/altivec8.c: UNROLL := $(obj)/altivec8.c: $(src)/altivec.uc $(src)/unroll.awk FORCE $(call if_changed,unroll) +CFLAGS_neon1.o += $(NEON_FLAGS) +targets += neon1.c +$(obj)/neon1.c: UNROLL := 1 +$(obj)/neon1.c: $(src)/neon.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + +CFLAGS_neon2.o += $(NEON_FLAGS) +targets += neon2.c +$(obj)/neon2.c: UNROLL := 2 +$(obj)/neon2.c: $(src)/neon.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + +CFLAGS_neon4.o += $(NEON_FLAGS) +targets += neon4.c +$(obj)/neon4.c: UNROLL := 4 +$(obj)/neon4.c: $(src)/neon.uc $(src)/unroll.awk FORCE + $(call if_changed,unroll) + +CFLAGS_neon8.o += $(NEON_FLAGS) +targets += neon8.c +$(obj)/neon8.c: UNROLL := 8 +$(obj)/neon8.c: $(src)/neon.uc $(src)/unroll.awk FORCE ++ + targets += tilegx8.c + $(obj)/tilegx8.c: UNROLL := 8 + $(obj)/tilegx8.c: $(src)/tilegx.uc $(src)/unroll.awk FORCE $(call if_changed,unroll) quiet_cmd_mktable = TABLE $@ diff --cc lib/raid6/test/Makefile index 28afa1a,cf49592..0000000 --- a/lib/raid6/test/Makefile +++ b/lib/raid6/test/Makefile @@@ -36,11 -27,8 +36,11 @@@ ifeq ($(IS_X86),yes CFLAGS += $(shell echo "vpbroadcastb %xmm0, %ymm1" | \ gcc -c -x assembler - >&/dev/null && \ rm ./-.o && echo -DCONFIG_AS_AVX2=1) +else ifeq ($(HAS_NEON),yes) + OBJS += neon.o neon1.o neon2.o neon4.o neon8.o + CFLAGS += -DCONFIG_KERNEL_MODE_NEON=1 else - HAS_ALTIVEC := $(shell echo -e '\#include \nvector int a;' |\ + HAS_ALTIVEC := $(shell printf '\#include \nvector int a;\n' |\ gcc -c -x c - >&/dev/null && \ rm ./-.o && echo yes) ifeq ($(HAS_ALTIVEC),yes) @@@ -113,7 -95,8 +119,8 @@@ tables.c: mktable ./mktables > tables.c clean: - rm -f *.o *.a mktables mktables.c *.uc int*.c altivec*.c tables.c raid6test + rm -f *.o *.a mktables mktables.c *.uc int*.c altivec*.c neon*.c tables.c raid6test + rm -f tilegx*.c spotless: clean rm -f *~