2002-10-30 21:59:23

by Matthew Dobson

[permalink] [raw]
Subject: [patch] use asm-generic/topology.h

diff -Nur --exclude-from=/usr/src/.dontdiff linux-2.5.44-vanilla/include/asm-alpha/topology.h linux-2.5.44-topology_fixup/include/asm-alpha/topology.h
--- linux-2.5.44-vanilla/include/asm-alpha/topology.h Fri Oct 18 21:01:18 2002
+++ linux-2.5.44-topology_fixup/include/asm-alpha/topology.h Wed Oct 30 13:51:56 2002
@@ -1,20 +1,15 @@
#ifndef _ASM_ALPHA_TOPOLOGY_H
#define _ASM_ALPHA_TOPOLOGY_H

-#ifdef CONFIG_NUMA
-#ifdef CONFIG_ALPHA_WILDFIRE
+#if defined(CONFIG_NUMA) && defined(CONFIG_ALPHA_WILDFIRE)
+
/* With wildfire assume 4 CPUs per node */
#define __cpu_to_node(cpu) ((cpu) >> 2)
-#endif /* CONFIG_ALPHA_WILDFIRE */
-#endif /* CONFIG_NUMA */

-#if !defined(CONFIG_NUMA) || !defined(CONFIG_ALPHA_WILDFIRE)
-#define __cpu_to_node(cpu) (0)
-#define __memblk_to_node(memblk) (0)
-#define __parent_node(nid) (0)
-#define __node_to_first_cpu(node) (0)
-#define __node_to_cpu_mask(node) (cpu_online_map)
-#define __node_to_memblk(node) (0)
-#endif /* !CONFIG_NUMA || !CONFIG_ALPHA_WILDFIRE */
+#else /* !CONFIG_NUMA || !CONFIG_ALPHA_WILDFIRE */
+
+#include <asm-generic/topology.h>
+
+#endif /* CONFIG_NUMA && CONFIG_ALPHA_WILDFIRE */

#endif /* _ASM_ALPHA_TOPOLOGY_H */
diff -Nur --exclude-from=/usr/src/.dontdiff linux-2.5.44-vanilla/include/asm-ppc64/topology.h linux-2.5.44-topology_fixup/include/asm-ppc64/topology.h
--- linux-2.5.44-vanilla/include/asm-ppc64/topology.h Fri Oct 18 21:01:52 2002
+++ linux-2.5.44-topology_fixup/include/asm-ppc64/topology.h Wed Oct 30 13:45:23 2002
@@ -48,12 +48,8 @@

#else /* !CONFIG_NUMA */

-#define __cpu_to_node(cpu) (0)
-#define __memblk_to_node(memblk) (0)
-#define __parent_node(nid) (0)
-#define __node_to_first_cpu(node) (0)
-#define __node_to_cpu_mask(node) (cpu_online_map)
-#define __node_to_memblk(node) (0)
+/* If non-NUMA, grab the generic macros */
+#include <asm-generic/topology.h>

#endif /* CONFIG_NUMA */


Attachments:
use_generic_topo-2.5.44.patch (1.85 kB)

2002-10-30 23:29:33

by Anton Blanchard

[permalink] [raw]
Subject: Re: [patch] use asm-generic/topology.h


Hi Matt,

> use_generic_topology.patch
>
> This patch changes ppc64 & alpha to use the generic topology.h for the
> non-NUMA case rather than redefining the same macros. It is much easier
> to maintain one set of generic non-NUMA macros than several.

Looks good from the ppc64 perspective.

Anton

2002-10-30 23:32:57

by Matthew Dobson

[permalink] [raw]
Subject: Re: [patch] use asm-generic/topology.h

Anton Blanchard wrote:
> Hi Matt,
>
>
>>use_generic_topology.patch
>>
>>This patch changes ppc64 & alpha to use the generic topology.h for the
>>non-NUMA case rather than redefining the same macros. It is much easier
>>to maintain one set of generic non-NUMA macros than several.
>
>
> Looks good from the ppc64 perspective.
>
> Anton

Glad to have the positive feedback. It doesn't really change how
anything works, just eliminates duplicate code and makes modifying the
generic behavior simpler.

Anyone that works with alpha want to verify that I haven't inadvertently
hosed your topology file?

Cheers!

-Matt

2002-10-31 01:36:48

by Peter Rival

[permalink] [raw]
Subject: Re: [patch] use asm-generic/topology.h

Matthew Dobson wrote:

> Anton Blanchard wrote:
> > Hi Matt,
> >
> >
> >>use_generic_topology.patch
> >>
> >>This patch changes ppc64 & alpha to use the generic topology.h for the
> >>non-NUMA case rather than redefining the same macros. It is much easier
> >>to maintain one set of generic non-NUMA macros than several.
> >
> >
> > Looks good from the ppc64 perspective.
> >
> > Anton
>
> Glad to have the positive feedback. It doesn't really change how
> anything works, just eliminates duplicate code and makes modifying the
> generic behavior simpler.
>
> Anyone that works with alpha want to verify that I haven't inadvertently
> hosed your topology file?
>

I'd say six of one, half-dozen of the other. I've been working with another
engineer on updated patches that among other things make NUMA work on Alpha
again. We're also re-working much of the surrounding code, including much of
this file anyway - Marvel uses a much different topology than Wildfire.

It looks fine to me, but realistically the only opinion I can give for real is
a shoulder shrug, as I'm not exactly sure when the code will be ready for
submission. Actually, the patch looks just like a part of the patch we have
working, just without Marvel support. Then again, I suppose IBM would have a
hard time doing that, huh? ;)

- Pete

2002-10-31 02:09:28

by Matthew Dobson

[permalink] [raw]
Subject: Re: [patch] use asm-generic/topology.h

Peter Rival wrote:
>
> <snip>
>
> I'd say six of one, half-dozen of the other. I've been working with another
> engineer on updated patches that among other things make NUMA work on Alpha
> again. We're also re-working much of the surrounding code, including much of
> this file anyway - Marvel uses a much different topology than Wildfire.
>
> It looks fine to me, but realistically the only opinion I can give for real is
> a shoulder shrug, as I'm not exactly sure when the code will be ready for
> submission. Actually, the patch looks just like a part of the patch we have
> working, just without Marvel support. Then again, I suppose IBM would have a
> hard time doing that, huh? ;)

I'll take that as a thumbs-up. "A wink's as good as a nudge to a blind
bat! eh? EH?"

Please apply, Linus.

Oh yeah... If you want to send me free hardware to play with, we can
see what happens on the Marvel support front... ;) ;)

Cheers!

-Matt