Re: [PATCH] sched: rewrite SCHED_CPUMASK_ALLOC

From: Li Zefan
Date: Fri Nov 07 2008 - 02:20:31 EST


>> #if NR_CPUS > 128
>> -#define SCHED_CPUMASK_ALLOC 1
>> -#define SCHED_CPUMASK_FREE(v) kfree(v)
>> -#define SCHED_CPUMASK_DECLARE(v) struct allmasks *v
>> +#define SCHED_CPUMASK_DECLARE(v) struct allmasks *v
>> +#define SCHED_CPUMASK_ALLOC(v) v = kmalloc(sizeof(*v), GFP_KERNEL)
>> +#define SCHED_CPUMASK_FREE(v) kfree(v)
>> #else
>> -#define SCHED_CPUMASK_ALLOC 0
>> -#define SCHED_CPUMASK_FREE(v)
>> -#define SCHED_CPUMASK_DECLARE(v) struct allmasks _v, *v = &_v
>> +#define SCHED_CPUMASK_DECLARE(v) struct allmasks _v, *v = &_v
>> +#define SCHED_CPUMASK_ALLOC(v)
>> +#define SCHED_CPUMASK_FREE(v)
>> #endif
>
> ok, the #ifdef removal is nice, but we can make it even cleaner:
> please just change it to a sched_cpumask_alloc() inline. That way
> SCHED_CPUMASK_DECLARE() can go away as well: just declare the
> variable, it will be unused in the <128 CPUs case.
>

I don't catch you. :(

In the <128 CPUs case, SCHED_CPUMASK_DECLARE is needed to declare a local
variable(struct allmasks) and a pointer pointing to it. So I don't know
what you mean by 'unused' and how to remove the DECLARE macro..

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/