2006-08-04 05:35:39

by Greg Banks

[permalink] [raw]
Subject: [PATCH 1 of 4] cpumask: add highest_possible_node_id

cpumask: add highest_possible_node_id(), analogous to
highest_possible_processor_id().

Signed-off-by: Greg Banks <[email protected]>
---

include/linux/nodemask.h | 2 ++
lib/cpumask.c | 16 ++++++++++++++++
2 files changed, 18 insertions(+)

Index: linus-git/include/linux/nodemask.h
===================================================================
--- linus-git.orig/include/linux/nodemask.h 2006-07-05 15:55:26.000000000 +1000
+++ linus-git/include/linux/nodemask.h 2006-08-01 15:40:50.953022638 +1000
@@ -352,6 +352,7 @@ extern nodemask_t node_possible_map;
#define node_possible(node) node_isset((node), node_possible_map)
#define first_online_node first_node(node_online_map)
#define next_online_node(nid) next_node((nid), node_online_map)
+int highest_possible_node_id(void);
#else
#define num_online_nodes() 1
#define num_possible_nodes() 1
@@ -359,6 +360,7 @@ extern nodemask_t node_possible_map;
#define node_possible(node) ((node) == 0)
#define first_online_node 0
#define next_online_node(nid) (MAX_NUMNODES)
+#define highest_possible_node_id() 0
#endif

#define any_online_node(mask) \
Index: linus-git/lib/cpumask.c
===================================================================
--- linus-git.orig/lib/cpumask.c 2006-07-05 15:55:39.000000000 +1000
+++ linus-git/lib/cpumask.c 2006-08-01 15:42:42.742593668 +1000
@@ -43,3 +43,19 @@ int __any_online_cpu(const cpumask_t *ma
return cpu;
}
EXPORT_SYMBOL(__any_online_cpu);
+
+#if MAX_NUMNODES > 1
+/*
+ * Find the highest possible node id.
+ */
+int highest_possible_node_id(void)
+{
+ unsigned int node;
+ unsigned int highest = 0;
+
+ for_each_cpu_mask(node, node_possible_map)
+ highest = node;
+ return highest;
+}
+EXPORT_SYMBOL(highest_possible_node_id);
+#endif

--
Greg Banks, R&D Software Engineer, SGI Australian Software Group.
I don't speak for SGI.



2006-10-16 10:57:04

by Paul Jackson

[permalink] [raw]
Subject: Re: [PATCH 1 of 4] cpumask: add highest_possible_node_id

This patch (of August 3, 2006) added (after a bit of fixing) a nodemask
related routine to lib/cpumask.c. Granted, there is no lib/nodemask.c,
and Andrew suggested lib/cpumask.c.

But at least it should have added

#include <linux/nodemask.h>

to lib/cpumask.c, no?

--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <[email protected]> 1.925.600.0401

2006-10-16 11:11:09

by Greg Banks

[permalink] [raw]
Subject: Re: [PATCH 1 of 4] cpumask: add highest_possible_node_id

On Mon, Oct 16, 2006 at 03:56:44AM -0700, Paul Jackson wrote:
> This patch (of August 3, 2006) added (after a bit of fixing) a nodemask
> related routine to lib/cpumask.c. Granted, there is no lib/nodemask.c,
> and Andrew suggested lib/cpumask.c.
>
> But at least it should have added
>
> #include <linux/nodemask.h>
>
> to lib/cpumask.c, no?

Sure.

Greg.
--
Greg Banks, R&D Software Engineer, SGI Australian Software Group.
I don't speak for SGI.