summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kern/percpu.c2
-rw-r--r--kern/percpu.h5
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;
}
/*