All of lore.kernel.org
 help / color / mirror / Atom feed
* SPARC32 SMP 2.6.36-rc3 build error
@ 2010-09-14 13:30 Daniel Hellstrom
  2010-09-14 21:12 ` David Miller
  2010-09-15  4:42   ` David Miller
  0 siblings, 2 replies; 6+ messages in thread
From: Daniel Hellstrom @ 2010-09-14 13:30 UTC (permalink / raw)
  To: sparclinux

Hi,

I have problems linking Linux SPARC32 when SMP is enabled:

  LD      vmlinux
  SYSMAP  System.map
  SYSMAP  .tmp_System.map
  BTFIX   arch/sparc/boot/btfix.S
  AS      arch/sparc/boot/btfix.o
  LD      arch/sparc/boot/image
net/built-in.o: In function `net_rps_action_and_irq_enable':
/home/daniel/linux/linux/linux-2.6/net/core/dev.c:3337: undefined 
reference to `__smp_call_function_single'
make[1]: *** [arch/sparc/boot/image] Error 1
make: *** [zImage] Error 2


It seems that __smp_call_function_single() is missing in smp_32.h for 
SPARC32, for SPARC64 the function is declared in linux/smp.h and 
kernel/smp.c by defining USE_GENERIC_SMP_HELPERS in arch/sparc/Kconfig.

__smp_call_function_single() was introduced in 
e77c8e83dd587f2616d7ff20d23a897891e6e20d:

+#ifdef CONFIG_SMP
+/*
+ * net_rps_action sends any pending IPI's for rps.  This is only called from
+ * softirq and interrupts must be enabled.
+ */
+static void net_rps_action(cpumask_t *mask)
+{
+       int cpu;
+
+       /* Send pending IPI's to kick RPS processing on remote cpus. */
+       for_each_cpu_mask_nr(cpu, *mask) {
+               struct softnet_data *queue = &per_cpu(softnet_data, cpu);
+               if (cpu_online(cpu))
+                       __smp_call_function_single(cpu, &queue->csd, 0);
+       }
+       cpus_clear(*mask);
+}
+#endif


Any ideas what I might have done wrong?

Thanks,
Daniel Hellstrom

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-09-15  7:20 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-14 13:30 SPARC32 SMP 2.6.36-rc3 build error Daniel Hellstrom
2010-09-14 21:12 ` David Miller
2010-09-15  4:42 ` David Miller
2010-09-15  4:42   ` David Miller
2010-09-15  7:20   ` Daniel Hellstrom
2010-09-15  7:20     ` Daniel Hellstrom

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.