[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: