debian的内核中关于spinlock的一个问题
hello!
(刚才的信忘记贴内容就发出起了sorry )
我写了个小模块,在模块insmod的时候 lock 了2次(代码见下),按理说第二次lock时会死锁,但是为何没有死锁?是不是debian的内核打了什么patch ?
我的测试环境是 debian 2.6.17 内核,单CPU, /boot/config-2.6.17-2-686 里 包含了CONFIG_SMP=y
uname -a 结果:
Linux falls 2.6.17-2-686 #1 SMP Wed Sep 13 16:34:10 UTC 2006 i686 GNU/Linux
测试代码:
#include <linux/module.h>
static spinlock_t silly_lock;
int silly_init(void)
{
spin_lock_init(&silly_lock);
printk("step1\n");
spin_lock(&silly_lock);
printk("step2\n");
spin_lock(&silly_lock);
printk("step3\n");
return 0;
}
void silly_cleanup(void)
{
return;
}
module_init(silly_init);
module_exit(silly_cleanup);
--
Regards
Falls Huang
Reply to: