コードが以下の場合
void test(void)
{
spin_lock_irqsave(&lock1, flag);
...
func1();
...
spin_unlock_irqrestore(&lock1, flag);
}
void func1(void)
{
spin_lock_irqsave(&lock2, flag);
...
spin_unlock_irqrestore(&lock2, flag);
}
コードに問題はありますか?func1 で が呼び出されたとき、spin_unlock_irqrestore
割り込みは既に有効になっていますか? 私が達成したいのはtest()
、スケジューラや割り込みによる中断なしにルーチンを実行できることです。どうもありがとう