WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] error binding to event channel

To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] error binding to event channel
From: Jacob Gorm Hansen <jacobg@xxxxxxx>
Date: Mon, 21 Feb 2005 00:26:32 -0800
Delivery-date: Mon, 21 Feb 2005 08:27:14 +0000
Envelope-to: xen+James.Bulpin@xxxxxxxxxxxx
List-archive: <http://sourceforge.net/mailarchive/forum.php?forum=xen-devel>
List-help: <mailto:xen-devel-request@lists.sourceforge.net?subject=help>
List-id: List for Xen developers <xen-devel.lists.sourceforge.net>
List-post: <mailto:xen-devel@lists.sourceforge.net>
List-subscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=subscribe>
List-unsubscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=unsubscribe>
Sender: xen-devel-admin@xxxxxxxxxxxxxxxxxxxxx
User-agent: Mozilla Thunderbird 1.0 (X11/20050116)
hi,
I am trying to bind an event channel to my domain using the following code:

#include "xc.h"

int main()
{
    int xc_handle = xc_interface_open();
    int p1=0;
    int p2=0;
    int r;

    r = xc_evtchn_alloc_unbound(xc_handle,
                            1,
                            &p2);
    printf("%d ports %d %d\n", r,p1,p2);

    r = xc_evtchn_bind_interdomain(xc_handle,
            DOMID_SELF,1,
            &p1,&p2);

    printf("%d ports %d %d\n", r,p1,p2);
    r = xc_evtchn_send(xc_handle, p1);
    printf("send %d\n", r);

    return 0;
}

On a freshly booted Xen with one domU that works, printing:

0 ports 0 14
0 ports 15 14
send 0

however, the next time I run it I get:

0 ports 0 16
-1 ports 0 16
send -1


The bind_interdomain hypercall fails in Xen in common/evtchn.c, in the test:

    else if ( port2 >= d2->max_event_channel )
    {
printk("port2 %d max_event_channel %d\n", port2,d2->max_event_channel);
        ERROR_EXIT(-EINVAL);
    }

The printk I have added prints:

(XEN) port2 16 max_event_channel 16


-- In general, max_event_channel seems to stop being increased after the first bind call. What am I doing wrong here?

thanks,
Jacob


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel

<Prev in Thread] Current Thread [Next in Thread>