diff options
-rw-r--r-- | kern/percpu.c | 2 | ||||
-rw-r--r-- | kern/percpu.h | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/kern/percpu.c b/kern/percpu.c index 3696842b..a7dd73ef 100644 --- a/kern/percpu.c +++ b/kern/percpu.c @@ -78,7 +78,7 @@ percpu_add(unsigned int cpu) return ERROR_INVAL; } - if (percpu_area(cpu) != NULL) { + if (percpu_areas[cpu] != NULL) { printk("percpu: error: id %u ignored, already registered\n", cpu); return ERROR_INVAL; } diff --git a/kern/percpu.h b/kern/percpu.h index 46d33ed7..820fed63 100644 --- a/kern/percpu.h +++ b/kern/percpu.h @@ -83,9 +83,12 @@ static inline void * percpu_area(unsigned int cpu) { extern void *percpu_areas[MAX_CPUS]; + void *area; assert(cpu < MAX_CPUS); - return percpu_areas[cpu]; + area = percpu_areas[cpu]; + assert(area != NULL); + return area; } /* |