| 
 I'm creating an event channel between hypervisor and xen. Starting from trace.c xentrace.c 
 
 I've put this line in the xen.h 
 
 #define � VIRQ_XENINI � �11 
  I've put in the hypervisor this code:/*notify DOM0 event of xenini*/ static void xenini_notify_dom0(unsigned long unused){ 
	send_guest_global_virq(dom0, VIRQ_XENINI); 
} 
 
 static DECLARE_TASKLET(xenini_notify_dom0_tasklet, xenini_notify_dom0, 0); 
 
 so if i have to notify to dom0 an event, �i just need to call: � tasklet_schedule(&xenini_notify_dom0_tasklet);� 
 
 true?? (it seems to work) 
 
 In a process running on dom0 i'm running this code: 
 
 static void event_init(void) { 
�� �int rc; �� �rc = xc_evtchn_open(); �� �if (rc < 0) { 
�� � � �perror(xc_get_last_error()->message); �� � � �exit(EXIT_FAILURE); �� �} 
�� �event_fd = xc_evtchn_fd(rc); �� �rc = xc_evtchn_bind_virq(event_fd, VIRQ_XENINI); �� �if (rc == -1) { 
�� � � �PERROR("failed to bind to VIRQ_XENINI port"); �� � � �exit(EXIT_FAILURE); 
�� �} �� �virq_port = rc; }  
 
 and i create a successful way to create the channel. but when i shut down the process in dom0. when i try to restart it.� It says: ERROR: failed to bind to VIRQ_XENINI port (17= file_exists). 
 
 what i have to add when i close the program?� 
  
 
getinfoDom0.c 
Description: Binary data 
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 
 |