Well, not exactly... ;-) It does institute the new API change that specifies
only pointers to cpumask's can be passed to functions and returned from
functions. I really wanted the default cpumask_t to be a constant so those
instances where the passed in cpumask is used as a read/write temp variable
would be caught. But it started getting messy.
One pain is:
typedef struct __cpumask_s *cpumask_t;
const cpumask_t xxx;
is not the same as:
typedef const struct __cpumask_s *const_cpumask_t;
const_cpumask_t xxx;
and I'm not exactly sure why. It came up when I tried to declare
functions that returned a constant cpumask_t pointer (node_to_cpumask,
cpumask_of_cpu, etc.)
The other major change I'm contemplating is to remove "cpumask_t" completely
(maybe cpumask_ptr_t?). This would force every instance of cpumask_t to be
examined. (I found quite a few I had missed in my original edits when I
added the task struct temp cpumask's.)
Oh yeah, one question ... is "current" always valid?
Thanks,
Mike
--