Re: [PATCH] cpumask 5/10 rewrite cpumask.h - single bitmap based implementation

Paul Jackson
2004-06-04T02:43:07Z

Andrew wrote:
> Paul Jackson <pj@sgi.com> wrote:
> >
> > Major rewrite of cpumask to use a single implementation,
> > as a struct-wrapped bitmap.
> >
> > ...
> >
> > +typedef struct { DECLARE_BITMAP(bits, NR_CPUS); } cpumask_t;
>
> We avoided doing this because in some situations the compiler will not pass
> such a cpumask_t in a register, ever. An efficiency problem on sparc64,
> apparently.

When I contacted Dave Miller about this specific problem on March 26,
2004, he explained that this was more of a problem on sparc32, and that
since SMP on sparc32 wasn't in robust shape yet (my words), he seemed
(from what I could tell) not to be objecting too strongly.

I've added Dave to the Cc list, in case he wants to add or something, or
correct my efforts to represent his position.

At this point, if sparc (32 or 64) is a concern, I'd look into adding
arch-specific code for that case. The overall cleanup of cpumasks
pleases me enough that I would seek to minimize the impact on the
generic case for specific arch's that require an alternative
implementation.

My current understanding is that such a special case is not required
for sparc, or any other arch.

--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@sgi.com> 1.650.933.1373