diff options
| author | Rusty Russell <rusty@rustcorp.com.au> | 2015-03-04 19:19:19 -0500 |
|---|---|---|
| committer | Rusty Russell <rusty@rustcorp.com.au> | 2015-03-09 23:24:42 -0400 |
| commit | cdfdef75e795fb5ab76c66f3329e509f3ab8b9b5 (patch) | |
| tree | 3e6ba270aadabfa764ceed44c2347f059cdcfe56 /include | |
| parent | c8ed00107b60b4a890798677d75e5c2910f393bb (diff) | |
cpumask: only allocate nr_cpumask_bits.
Now we'll find out the hard way if anyone has CPUMASK_OFFSTACK and is
returning these or assigning them.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/cpumask.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/include/linux/cpumask.h b/include/linux/cpumask.h index 646fadee5caf..4ad2d3c8e21f 100644 --- a/include/linux/cpumask.h +++ b/include/linux/cpumask.h | |||
| @@ -11,6 +11,7 @@ | |||
| 11 | #include <linux/bitmap.h> | 11 | #include <linux/bitmap.h> |
| 12 | #include <linux/bug.h> | 12 | #include <linux/bug.h> |
| 13 | 13 | ||
| 14 | /* Don't assign or return these: may not be this big! */ | ||
| 14 | typedef struct cpumask { DECLARE_BITMAP(bits, NR_CPUS); } cpumask_t; | 15 | typedef struct cpumask { DECLARE_BITMAP(bits, NR_CPUS); } cpumask_t; |
| 15 | 16 | ||
| 16 | /** | 17 | /** |
| @@ -609,9 +610,7 @@ static inline int cpulist_parse(const char *buf, struct cpumask *dstp) | |||
| 609 | */ | 610 | */ |
| 610 | static inline size_t cpumask_size(void) | 611 | static inline size_t cpumask_size(void) |
| 611 | { | 612 | { |
| 612 | /* FIXME: Once all cpumask assignments are eliminated, this | 613 | return BITS_TO_LONGS(nr_cpumask_bits) * sizeof(long); |
| 613 | * can be nr_cpumask_bits */ | ||
| 614 | return BITS_TO_LONGS(NR_CPUS) * sizeof(long); | ||
| 615 | } | 614 | } |
| 616 | 615 | ||
| 617 | /* | 616 | /* |
