2016-06-09 73 views
-2

以下定义在Linux内核中使用DEFINE_PER_CPU时工作:DEFINE_PER_CPU定义指针数组结构

DEFINE_PER_CPU(int, x); 
DEFINE_PER_CPU(char[10], c); 
DEFINE_PER_CPU(struct foo, f); 

我现在要定义一个指针数组使用相同的结构。

假设该结构被称为struct foo,并且将被命名为bar。我然后尝试:

DEFINE_PER_CPU(struct *foo[100], bar); 

但是,它会导致编译错误。我也尝试了其他一些排列,但无法使其工作。任何人都可以指出什么会起作用,为什么?

我明白一个解决方法可能是创建一个存储指针的包装器结构,它可以被上述方法之一使用,但我想知道如何使它与指针一起工作。

编辑:结构foo也不工作。

回答