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

xen-devel

[Top] [All Lists]

[Xen-devel] Re: [Xen-changelog] [xen-unstable] xend: pass-through: devic

To: "Cui, Dexuan" <dexuan.cui@xxxxxxxxx>
Subject: [Xen-devel] Re: [Xen-changelog] [xen-unstable] xend: pass-through: device state in xenstore may be null
From: Simon Horman <horms@xxxxxxxxxxxx>
Date: 2009年7月29日 14:06:26 +1000
Cc: Tom Rotenberg <tom.rotenberg@xxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: 2009年7月28日 21:06:56 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <EADF0A36011179459010BDF5142A457501CB84C66E@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
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>
References: <200907281610.n6SGAcxZ010950@xxxxxxxxxxxxxxxxxxxxx> <EADF0A36011179459010BDF5142A457501CB84C66E@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.18 (2008年05月17日)
On Wed, Jul 29, 2009 at 10:57:40AM +0800, Cui, Dexuan wrote:
> Hi Tom and Simon,
> The patch looks like a workaround to me.
> Could you please explain under what condition the state may be null?
>
> On my host I don't meet with the issue, but I did hear the same issue on
> some host and I would look into it when the host is available for me.
Hi Dexuan,
I agree that this looks a lot like a work-around. I was initially very
reluctant to apply it. And I would still be very happy if someone could
find a better solution. My analysis of the problem is as follows:
 What I now think is happening is that for some reason on your system
 when _createDevices() initialises the devices in xenstore using
 _createDevice() then end up with no state entry. Whereas on my system
 then end up with state 3=Initialised.
 It seems to me that actually the behaviour of your system is correct and
 my system is bogus. I really don't know why that is the case - are you
 using the stock xenstore implementation in C, or the Ocaml version?
 In any case, it seems to be that your original work-around was more or
 less correct. I'll just tweak it a bit to handle the case where
 cleanupDevices() is shuffling entries because one or more have been
 deleted and repost it.
 Ref: http://lists.xensource.com/archives/html/xen-devel/2009-07/msg01082.html
>
> Thanks,
> -- Dexuan
>
> -----Original Message-----
> From: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx 
> [mailto:xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Xen 
> patchbot-unstable
> Sent: 2009?7?29? 0:11
> To: xen-changelog@xxxxxxxxxxxxxxxxxxx
> Subject: [Xen-changelog] [xen-unstable] xend: pass-through: device state in 
> xenstore may be null
>
> # HG changeset patch
> # User Keir Fraser <keir.fraser@xxxxxxxxxx>
> # Date 1248795146 -3600
> # Node ID 0c7a560822d9d9516dfc83cef6fceec944fd97a8
> # Parent 6120f7a92d82ccb1747feffa1a72eb704e642fb0
> xend: pass-through: device state in xenstore may be null
>
> Signed-off-by: Tom Rotenberg <tom.rotenberg@xxxxxxxxx>
> ---
> tools/python/xen/xend/server/pciif.py | 6 +++++-
> 1 files changed, 5 insertions(+), 1 deletion(-)
>
> diff -r 6120f7a92d82 -r 0c7a560822d9 tools/python/xen/xend/server/pciif.py
> --- a/tools/python/xen/xend/server/pciif.py Tue Jul 28 16:28:21 2009 +0100
> +++ b/tools/python/xen/xend/server/pciif.py Tue Jul 28 16:32:26 2009 +0100
> @@ -489,7 +489,11 @@ class PciController(DevController):
> num_devs = int(self.readBackend(devid, 'num_devs'))
> new_num_devs = 0
> for i in range(num_devs):
> - state = int(self.readBackend(devid, 'state-%i' % i))
> + try:
> + state = int(self.readBackend(devid, 'state-%i' % i))
> + except:
> + state = xenbusState['Unknown']
> +
> if state == xenbusState['Closing']:
> # Detach I/O resources.
> pci_dev = parse_pci_name(self.readBackend(devid, 'dev-%i' % 
> i))
>
> _______________________________________________
> Xen-changelog mailing list
> Xen-changelog@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-changelog 
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>
Previous by Date: [Xen-devel] [PATCH] xend: pci: fix a typo in do_Dstate_transition , Cui, Dexuan
Next by Date: [Xen-devel] Re: [PATCH]xend: pass-through: fix "xm pci-list-assignable-devices' for pv_guest , Simon Horman
Previous by Thread: [Xen-devel] RE: [Xen-changelog] [xen-unstable] xend: pass-through: device state in xenstore may be null , Cui, Dexuan
Next by Thread: [Xen-devel] RE: [Xen-changelog] [xen-unstable] xend: pass-through: device state in xenstore may be null , Cui, Dexuan
Indexes: [Date] [Thread] [Top] [All Lists]

Copyright ©, Citrix Systems Inc. All rights reserved. Legal and Privacy
Citrix This site is hosted by Citrix

AltStyle によって変換されたページ (->オリジナル) /