Hi, 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()<http://www.codebrowse.net/source/xref/linux-3.0/include/linux/interrupt.h#request_irq>, which calls request_threaded_irq()<http://www.codebrowse.net/source/xref/linux-3.0/include/linux/interrupt.h#request_threaded_irq>, which calls request_irq() again. But in another website, I find the request_threaded_irq()<http://tomoyo.sourceforge.jp/cgi-bin/lxr/source/kernel/irq/manage.c#L1346>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@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies