Thread (18 messages) 18 messages, 9 authors, 2005-01-23

Re: [PATCH] raid6: altivec support

From: David Woodhouse <dwmw2@infradead.org>
Date: 2005-01-17 10:16:52
Also in: lkml

On Sun, 2005-01-09 at 16:13 +0100, Olaf Hering wrote:
quoted
ChangeSet 1.2347, 2005/01/08 14:02:27-08:00, hpa@zytor.com

      [PATCH] raid6: altivec support
      
      This patch adds Altivec support for RAID-6, if appropriately configured on
      the ppc or ppc64 architectures.  Note that it changes the compile flags for
      ppc64 in order to handle -maltivec correctly; this change was vetted on the
      ppc64 mailing list and OK'd by paulus.
This fails to compile on ppc, enable_kernel_altivec() is an exported but
undeclared function. cpu_features is also missing.

drivers/md/raid6altivec1.c: In function `raid6_altivec1_gen_syndrome':
drivers/md/raid6altivec1.c:99: warning: implicit declaration of function `enable_kernel_altivec'
drivers/md/raid6altivec1.c: In function `raid6_have_altivec':
drivers/md/raid6altivec1.c:111: error: request for member `cpu_features' in something not a structure or union
drivers/md/raid6altivec2.c: In function `raid6_altivec2_gen_syndrome':
drivers/md/raid6altivec2.c:110: warning: implicit declaration of function `enable_kernel_altivec'
This makes it compile on PPC, but highlights the difference between
'cur_cpu_spec' on ppc32 and ppc64. Why is 'cur_cpu_spec' an array on
ppc32? Isn't 'cur' supposed to imply 'current'?

===== drivers/md/raid6altivec.uc 1.1 vs edited =====
--- 1.1/drivers/md/raid6altivec.uc	Sat Jan  8 05:44:07 2005
+++ edited/drivers/md/raid6altivec.uc	Mon Jan 17 09:45:20 2005
@@ -108,7 +108,11 @@
 int raid6_have_altivec(void)
 {
 	/* This assumes either all CPUs have Altivec or none does */
+#ifdef CONFIG_PPC64
 	return cur_cpu_spec->cpu_features & CPU_FTR_ALTIVEC;
+#else
+	return cur_cpu_spec[0]->cpu_features & CPU_FTR_ALTIVEC;
+#endif
 }
 #endif
 

-- 
dwmw2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help