Recently, I am trying to test event channel on Xen. I write a module alloc an event channel and try to bind this channel to an irq handler. But every time I insmod the module, the kernel says that the action of binding fails.
I use a function defined in drivers/xen/events.c like this:
bind_evtchn_to_irqhandler(args.port,server_handler,IRQF_DISABLED,NULL,NULL);
And I must admit that I have very few knowledge of the interrupt handler stuff and whether the last two parameters can be set NULL. So here are two problem:
1)I really need some simple instruction and sample code about both the interrupt handler and, especially, xen event channel.
2)And there is other odd thing. I try to check the bind_evtchn_to_irqhandler, finding that it finally calls request_irq(), which calls request_threaded_irq(), which calls request_irq() again.
But in another website, I find the request_threaded_irq() defined in the kernel/irq/manage.c#L1346. I'm totally confused.
Sorry for my poor English. If anyone knows the answer, please tell me. Thanks a lot!
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies