2008-07-22 13:17:52

by Aneesh Kumar K.V

[permalink] [raw]
Subject: [PATCH] ext4: Convert the usage of NR_CPUS to nr_cpu_ids.

NR_CPUS can be really large. We should be using nr_cpu_ids
instead.

Signed-off-by: Aneesh Kumar K.V <[email protected]>
---
fs/ext4/mballoc.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c
index 9db0f4d..5b854b7 100644
--- a/fs/ext4/mballoc.c
+++ b/fs/ext4/mballoc.c
@@ -2541,7 +2541,7 @@ int ext4_mb_init(struct super_block *sb, int needs_recovery)
sbi->s_mb_history_filter = EXT4_MB_HISTORY_DEFAULT;
sbi->s_mb_group_prealloc = MB_DEFAULT_GROUP_PREALLOC;

- i = sizeof(struct ext4_locality_group) * NR_CPUS;
+ i = sizeof(struct ext4_locality_group) * nr_cpu_ids;
sbi->s_locality_groups = kmalloc(i, GFP_KERNEL);
if (sbi->s_locality_groups == NULL) {
clear_opt(sbi->s_mount_opt, MBALLOC);
@@ -2549,7 +2549,7 @@ int ext4_mb_init(struct super_block *sb, int needs_recovery)
kfree(sbi->s_mb_maxs);
return -ENOMEM;
}
- for (i = 0; i < NR_CPUS; i++) {
+ for (i = 0; i < nr_cpu_ids; i++) {
struct ext4_locality_group *lg;
lg = &sbi->s_locality_groups[i];
mutex_init(&lg->lg_mutex);
--
1.5.6.3.439.g1e10.dirty



2008-07-22 15:14:38

by Eric Sandeen

[permalink] [raw]
Subject: Re: [PATCH] ext4: Convert the usage of NR_CPUS to nr_cpu_ids.

Aneesh Kumar K.V wrote:
> NR_CPUS can be really large. We should be using nr_cpu_ids
> instead.

Yep, thanks, I thought we got rid of these at some point but guess not
(or not all)!

> Signed-off-by: Aneesh Kumar K.V <[email protected]>

Acked-by: Eric Sandeen <[email protected]>

> ---
> fs/ext4/mballoc.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c
> index 9db0f4d..5b854b7 100644
> --- a/fs/ext4/mballoc.c
> +++ b/fs/ext4/mballoc.c
> @@ -2541,7 +2541,7 @@ int ext4_mb_init(struct super_block *sb, int needs_recovery)
> sbi->s_mb_history_filter = EXT4_MB_HISTORY_DEFAULT;
> sbi->s_mb_group_prealloc = MB_DEFAULT_GROUP_PREALLOC;
>
> - i = sizeof(struct ext4_locality_group) * NR_CPUS;
> + i = sizeof(struct ext4_locality_group) * nr_cpu_ids;
> sbi->s_locality_groups = kmalloc(i, GFP_KERNEL);
> if (sbi->s_locality_groups == NULL) {
> clear_opt(sbi->s_mount_opt, MBALLOC);
> @@ -2549,7 +2549,7 @@ int ext4_mb_init(struct super_block *sb, int needs_recovery)
> kfree(sbi->s_mb_maxs);
> return -ENOMEM;
> }
> - for (i = 0; i < NR_CPUS; i++) {
> + for (i = 0; i < nr_cpu_ids; i++) {
> struct ext4_locality_group *lg;
> lg = &sbi->s_locality_groups[i];
> mutex_init(&lg->lg_mutex);


2008-07-22 23:58:12

by Andreas Dilger

[permalink] [raw]
Subject: Re: [PATCH] ext4: Convert the usage of NR_CPUS to nr_cpu_ids.

On Jul 22, 2008 18:47 +0530, Aneesh Kumar wrote:
> NR_CPUS can be really large. We should be using nr_cpu_ids
> instead.

Should this actually be num_possible_cpus() or num_online_cpus()?
I've never seen nr_cpu_ids used before.

Cheers, Andreas
--
Andreas Dilger
Sr. Staff Engineer, Lustre Group
Sun Microsystems of Canada, Inc.


2008-07-23 13:30:50

by Aneesh Kumar K.V

[permalink] [raw]
Subject: Re: [PATCH] ext4: Convert the usage of NR_CPUS to nr_cpu_ids.

On Tue, Jul 22, 2008 at 05:58:04PM -0600, Andreas Dilger wrote:
> On Jul 22, 2008 18:47 +0530, Aneesh Kumar wrote:
> > NR_CPUS can be really large. We should be using nr_cpu_ids
> > instead.
>
> Should this actually be num_possible_cpus() or num_online_cpus()?
> I've never seen nr_cpu_ids used before.
>

introduced in
git show 53b8a315b76a3f3c70a5644976c0095460eb13d8
[PATCH] Convert highest_possible_processor_id to nr_cpu_ids

lots of eg: that does NR_CPU to nr_cpu_ids conversion

git show 0c0b0aca66b3a58e12a216d992a0b534eff210e0
net: remove NR_CPUS arrays in net/core/dev.c

-aneesh