[問題] spinlock的小問題

看板LinuxDev作者 (suedeN  ￾   )時間17年前 (2007/12/01 04:46), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
因為不知道 spin_lock_irqsave 的用法 所以我自己寫了一個小module測試一下 #include <linux/init.h> #include <linux/module.h> //#include <linux/list.h> //#include <linux/vmalloc.h> #include <linux/spinlock.h> #include <asm/spinlock.h> static int __init my_module_init(void) { printk("enter spinlock_test.....................\n"); spinlock_t my_lock = SPIN_LOCK_UNLOCKED; unsigned long flags; spin_lock_irqsave(&my_lock, flags); printk("the flags is %lu \n",flags); spin_unlock_irqrestore (&my_lock, flags); // spin_lock(&my_lock); // spin_unlock(&my_lock); } static void __exit my_module_exit(void) { printk("spinlock_test unload\n"); } module_init(my_module_init); module_exit(my_module_exit); 但編譯成功後 我要insmod時會出現一個 insmod: error inserting 'spinlock_test.ko': -636854376 Function not implemented 我在google 找好久也找不到答案 煩請幫忙 還有就是 spin_lock_irq spin_lock_irqsave 之間的用法差在哪 我知道一個有save cpu 現在的flags 但是為什麼什麼情況下我必須要save flag 而又如何知道我不必要save flag 而使用 spin_lock_irq 兩個問題煩請幫忙 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.176.182
文章代碼(AID): #17K7R2-Z (LinuxDev)
文章代碼(AID): #17K7R2-Z (LinuxDev)