<linux 2.4>

queue_task 함수에서 tq_immediate를 쓸려면, mark_bh 라는 bottomhalf 함수를 호출해야 한다.
강제적으로 sw int를 생성하는 함수이다.

void ost1_interrupt(int irq, void *dev_id, struct pt_regs *regs)

{

OST1_TIMER_OFF;

    printk("OST1 Int enter ...\n");

    flag_ost1Int = 1;

tq_ost1.routine = tq_timer1;

tq_ost1.data = (void *) 10;

queue_task(&tq_ost1, &tq_immediate);

mark_bh(IMMEDIATE_BH); 

    printk("OST1 Int exit...\n");

}


'c or linux' 카테고리의 다른 글

/proc/interrupts  (0) 2011.04.21
[공부중] bottomhalf & work queue  (0) 2011.04.21
[공부중] queue_task 예제  (0) 2011.04.21
[공부중] poll 함수 예제  (0) 2011.04.21
[공부중] blocking io 와 waiting queue  (0) 2011.04.21
Posted by '김용환'
,