* event channels
@ 2006-02-27 0:48 jaikumar Ganesh
0 siblings, 0 replies; 9+ messages in thread
From: jaikumar Ganesh @ 2006-02-27 0:48 UTC (permalink / raw)
To: xen-devel
Hi
A newbie to xen here..
I want to add a new event that the xen hypervisor will use to
communicate info to Domain-0. Any pointers as to how I should go about
doing it.
Had a look at the event_channel hypercall and the set_callback
function, but did not get a clear picture..
Thanks
Jaikumar
^ permalink raw reply [flat|nested] 9+ messages in thread
* RE: event channels
@ 2006-02-27 2:17 Tian, Kevin
0 siblings, 0 replies; 9+ messages in thread
From: Tian, Kevin @ 2006-02-27 2:17 UTC (permalink / raw)
To: jaikumar Ganesh, xen-devel
>From: jaikumar Ganesh
>Sent: 2006年2月27日 8:49
>
>Hi
> A newbie to xen here..
>
>I want to add a new event that the xen hypervisor will use to
>communicate info to Domain-0. Any pointers as to how I should go about
>doing it.
Normally if the event channel is for communication between domain
and Xen, it's categorized into VIRQ group. All supported VIRQs are
listed in xen/include/public/xen.h. Then you need to explicitly register
new added VIRQ to dom0 interrupt sub-system by
bind_virq_to_irqhandler. Example like drivers/xen/console/console.c.
If the new VIRQ is meaningful and you'd like to propose it for widely
used, then please send out patch plus description to this mailing
list for discussion.
Thanks,
Kevin
>
>Had a look at the event_channel hypercall and the set_callback
>function, but did not get a clear picture..
>
>Thanks
>Jaikumar
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Event Channels
@ 2007-01-12 18:33 Julian Stecklina
2007-01-12 19:03 ` Mark Williamson
2007-01-12 19:29 ` Brendan Cully
0 siblings, 2 replies; 9+ messages in thread
From: Julian Stecklina @ 2007-01-12 18:33 UTC (permalink / raw)
To: xen-devel
Hello,
in an application I develop, event channel semantics seem a bit odd to
me. Consider the following scenario: A Mini-OS binds an unbound port for
domain 0 and issues a notification every second:
evtchn_alloc_unbound(0, msg_handler, NULL,
&port);
printk("%u %u %u\n", domid, port);
while (1) {
sleep(1000);
notify_remote_via_evtchn(port);
}
A Linux program running on Domain 0 calls bind_interdomain using domid
and port to obtain local_port and watches for pending notifications:
evtchn_port_t local_port = xc_evtchn_bind_interdomain(ev, domid, port);
while (1) {
evtchn_port_t port;
port = xc_evtchn_pending(ev);
printf("%u\n", port);
xc_evtchn_unmask(ev, port);
}
Now what I do not understand is, why the Linux program sees exactly one
notification and then indefinitely blocks. Any help on what I may be
doing wrong is greatly appreciated. This is with xen-3.0.4-testing.
Regards,
Julian
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Event Channels
2007-01-12 18:33 Event Channels Julian Stecklina
@ 2007-01-12 19:03 ` Mark Williamson
2007-01-18 13:02 ` Julian Stecklina
2007-01-12 19:29 ` Brendan Cully
1 sibling, 1 reply; 9+ messages in thread
From: Mark Williamson @ 2007-01-12 19:03 UTC (permalink / raw)
To: xen-devel; +Cc: Julian Stecklina
I don't see anything wrong with your code... are you sure the minios is
behaving itself and sending the events? Have you tried putting printks in
there to see if it's definitely successfully operating?
Are you sure the value of "port" you're binding in dom0 is correct? If
necessary, you could try adding tracing code to the Linux evtchn driver.
I can't quite see what's going wrong from the code you posted, sorry not to be
more helpful.
Cheers,
Mark
On Friday 12 January 2007 18:33, Julian Stecklina wrote:
> Hello,
>
> in an application I develop, event channel semantics seem a bit odd to
> me. Consider the following scenario: A Mini-OS binds an unbound port for
> domain 0 and issues a notification every second:
>
> evtchn_alloc_unbound(0, msg_handler, NULL,
> &port);
>
> printk("%u %u %u\n", domid, port);
>
> while (1) {
> sleep(1000);
> notify_remote_via_evtchn(port);
> }
>
> A Linux program running on Domain 0 calls bind_interdomain using domid
> and port to obtain local_port and watches for pending notifications:
>
> evtchn_port_t local_port = xc_evtchn_bind_interdomain(ev, domid, port);
>
> while (1) {
> evtchn_port_t port;
>
> port = xc_evtchn_pending(ev);
> printf("%u\n", port);
> xc_evtchn_unmask(ev, port);
> }
>
> Now what I do not understand is, why the Linux program sees exactly one
> notification and then indefinitely blocks. Any help on what I may be
> doing wrong is greatly appreciated. This is with xen-3.0.4-testing.
>
> Regards,
> Julian
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel
--
Dave: Just a question. What use is a unicyle with no seat? And no pedals!
Mark: To answer a question with a question: What use is a skateboard?
Dave: Skateboards have wheels.
Mark: My wheel has a wheel!
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Event Channels
2007-01-12 18:33 Event Channels Julian Stecklina
2007-01-12 19:03 ` Mark Williamson
@ 2007-01-12 19:29 ` Brendan Cully
1 sibling, 0 replies; 9+ messages in thread
From: Brendan Cully @ 2007-01-12 19:29 UTC (permalink / raw)
To: Julian Stecklina; +Cc: xen-devel
On Friday, 12 January 2007 at 19:33, Julian Stecklina wrote:
> Hello,
>
> in an application I develop, event channel semantics seem a bit odd to
> me. Consider the following scenario: A Mini-OS binds an unbound port for
> domain 0 and issues a notification every second:
>
> evtchn_alloc_unbound(0, msg_handler, NULL,
> &port);
>
> printk("%u %u %u\n", domid, port);
>
> while (1) {
> sleep(1000);
> notify_remote_via_evtchn(port);
> }
>
> A Linux program running on Domain 0 calls bind_interdomain using domid
> and port to obtain local_port and watches for pending notifications:
>
> evtchn_port_t local_port = xc_evtchn_bind_interdomain(ev, domid,
> port);
>
> while (1) {
> evtchn_port_t port;
>
> port = xc_evtchn_pending(ev);
> printf("%u\n", port);
> xc_evtchn_unmask(ev, port);
> }
>
> Now what I do not understand is, why the Linux program sees exactly one
> notification and then indefinitely blocks. Any help on what I may be
> doing wrong is greatly appreciated. This is with xen-3.0.4-testing.
According to the interface guide
http://www.cl.cam.ac.uk/research/srg/netos/xen/readmes/interface/interface.html#SECTION00600000000000000000
the event is masked until the receiver clears the notification. I
think you do this by sending a notify back along the same port:
while (1) {
evtchn_port_t port;
port = xc_evtchn_pending(ev);
printf("%u\n", port);
xc_evtchn_notify(ev, port);
xc_evtchn_unmask(ev, port);
}
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Event Channels
2007-01-12 19:03 ` Mark Williamson
@ 2007-01-18 13:02 ` Julian Stecklina
0 siblings, 0 replies; 9+ messages in thread
From: Julian Stecklina @ 2007-01-18 13:02 UTC (permalink / raw)
To: xen-devel
Mark Williamson wrote:
> I don't see anything wrong with your code... are you sure the minios is
> behaving itself and sending the events? Have you tried putting printks in
> there to see if it's definitely successfully operating?
>
> Are you sure the value of "port" you're binding in dom0 is correct? If
> necessary, you could try adding tracing code to the Linux evtchn driver.
It seems that the hypercall that ought to perform the notification is
returning ENOSYS, which is rather strange. I am going to add some
printk()s to the hypervisor in order to see what is going wrong.
Regards,
Julian
^ permalink raw reply [flat|nested] 9+ messages in thread
* Event Channels
@ 2007-05-04 20:05 Koripella Srinivas
2007-05-05 8:23 ` Keir Fraser
0 siblings, 1 reply; 9+ messages in thread
From: Koripella Srinivas @ 2007-05-04 20:05 UTC (permalink / raw)
To: xen-devel
[-- Attachment #1.1: Type: text/plain, Size: 288 bytes --]
Hi,
Has any one ever setup event channels between two domU(hvm) guests. or may be a
hvm guest and a paravirtualized guest?
any code pointers for doing the same?
Thanks
Send a FREE SMS to your friend's mobile from Yahoo! Messenger. Get it now at http://in.messenger.yahoo.com/
[-- Attachment #1.2: Type: text/html, Size: 565 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Event Channels
2007-05-04 20:05 Koripella Srinivas
@ 2007-05-05 8:23 ` Keir Fraser
0 siblings, 0 replies; 9+ messages in thread
From: Keir Fraser @ 2007-05-05 8:23 UTC (permalink / raw)
To: Koripella Srinivas, xen-devel
[-- Attachment #1.1: Type: text/plain, Size: 353 bytes --]
On 4/5/07 21:05, "Koripella Srinivas" <talkwithsrinivas@yahoo.co.in> wrote:
> Has any one ever setup event channels between two domU(hvm) guests. or may be
> a
> hvm guest and a paravirtualized guest?
> any code pointers for doing the same?
Try looking at the PV-on-HVM Linux drivers (in unmodified_drivers/ directory
of the xen repo).
-- Keir
[-- Attachment #1.2: Type: text/html, Size: 804 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* Event Channels
@ 2010-09-15 20:37 Srujan D. Kotikela
0 siblings, 0 replies; 9+ messages in thread
From: Srujan D. Kotikela @ 2010-09-15 20:37 UTC (permalink / raw)
To: xen-devel
Any pointers for how to create event channels?
--
Srujan D. Kotikela
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2010-09-15 20:37 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-01-12 18:33 Event Channels Julian Stecklina
2007-01-12 19:03 ` Mark Williamson
2007-01-18 13:02 ` Julian Stecklina
2007-01-12 19:29 ` Brendan Cully
-- strict thread matches above, loose matches on Subject: below --
2010-09-15 20:37 Srujan D. Kotikela
2007-05-04 20:05 Koripella Srinivas
2007-05-05 8:23 ` Keir Fraser
2006-02-27 2:17 event channels Tian, Kevin
2006-02-27 0:48 jaikumar Ganesh
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.