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] event_lock not initialized in the idle domain (permitted act

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] event_lock not initialized in the idle domain (permitted actions in a tasklet?)
From: "Byrne, John (HP Labs)" <john.l.byrne@xxxxxx>
Date: Thu, 22 Apr 2010 20:57:50 +0000
Accept-language: en-US
Acceptlanguage: en-US
Delivery-date: Thu, 22 Apr 2010 14:08:57 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcriXnhomNarVb6UQu+V77DxbzJ2aA==
Thread-topic: event_lock not initialized in the idle domain (permitted actions in a tasklet?)
I am playing with the xenpaging code that was checked into xen 4.0 and I hit a 
bug because it sends an event channel notification from a tasklet which was 
getting run from the idle domain on my box. Since domain_create() does not 
perform the evtchn_init for the idle domain, the event_lock was not initialized 
and the tasklet would hang the cpu when it tried to acquire the lock.

While my immediate problem seems easy enough to work around --- I really can't 
see the reason for the tasklet in the first place, so I just got rid of it --- 
the underlying issue needs a look. Should domain_create() simply initialize all 
of the idle_domain structure?  As far as I can tell, the only reason it doesn't 
is to save a little memory. While the event_lock issue can be dealt with simply 
enough by breaking out the initialization separately, it seems that having the 
special-case code for the idle domain opens up the possibility for bugs with 
respect to operations from tasklets.

Thanks,

John Byrne

 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel