这是我为2.x内核编写的内核模块的一行。
let imgUrl = 'images/berlin.jpg'
let styles = {
root: {
backgroundImage: 'url(' + imgUrl + ')',
backgroundImage: {
flex: 1,
resizeMode: 'cover', // or 'stretch'
},
overflow: 'hidden',
},
...
当我尝试为3.16内核编译此模块时,我收到以下构建错误。
static spinlock_t mr_lock = SPIN_LOCK_UNLOCKED;
当我查看3.16版本的linux/spinlock_types.h
,它定义了此内核的error: ‘SPIN_LOCK_UNLOCKED’ undeclared here (not in a function)
类型时,确实没有SPIN_LOCK_UNLOCKED常量。
但是,目前尚不清楚如何为此内核初始化一个解锁的自旋锁。
实现相同初始化的正确方法是什么?
答案 0 :(得分:4)
这取决于你如何使用它。
#define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
to replace code like:
spinlock_t init_lock = SPIN_LOCK_UNLOCKED;
with the improved:
DEFINE_SPINLOCK(init_lock);
我从这个
采取了上述内容https://www.mail-archive.com/kernelnewbies@nl.linux.org/msg02836.html