2016-06-09 109 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也不工作。

回答