All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Zhai, Edwin" <edwin.zhai@intel.com>
To: Simon Horman <horms@verge.net.au>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
	"Han, Weidong" <weidong.han@intel.com>,
	Masaki Kanno <kanno.masaki@jp.fujitsu.com>,
	"Cui, Dexuan" <dexuan.cui@intel.com>
Subject: Re: [patch v2] xm: Fix hot-unplug of	statically-assigned devices
Date: Thu, 23 Apr 2009 17:13:30 +0800	[thread overview]
Message-ID: <49F0313A.40508@intel.com> (raw)
In-Reply-To: <20090423014252.GA19748@verge.net.au>

Simon,
Thanks for your fix.
How about switching to another xenstore entry for qemu => xend 
communication?  That is, change store entry in both sync_pcidev_info and 
xenstore_write_vslots(qemu).
Does it work when specifying vslot in config file?

Thanks,
edwin


Simon Horman wrote:
> Prior to changset 19510:5c69f98c348e - 'xm, xend: Replace "vslt" with "vslot"',
> both vslt and vslot were used in the xm code, often fairly arbitrarily.
>
> However, in the dictionary that describes a pci function both vslt and vslot
> were present. vslt stored the slot assigned to the function. And
> vslot stored the slot the user requested for the function, or AUTO_PHP_SLOT
> if no slot was requested.
>
> With the renaming these two values got merged into a single entry.
> This patch un-merges them by renaming the what was vslot to requested_vslot.
>
> So an out of chronological order list of name changes is:
>
> 'vslot' -> 'requested_vslot'
> 'vslt'  -> 'vslot'
>
> Signed-off-by: Simon Horman <horms@verge.net.au>
>
> --- 
>
> Thu, 23 Apr 2009 03:30:54 +1000
>
> * I have given this only light testing, I would appreciate it if others
>   could look at it.
>
> * This bug should probably be fixed for 3.4.0
>
> * This bug is in Bugzilla as Bug #1446
>   http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1446
>
> Thu, 23 Apr 2009 11:41:36 +1000
>
> * Removed spirous tools/python/xen/xend/XendDomainInfo.py fragments,
>   these were a cosmetic change I was working on.
>
> Index: xen-unstable.hg/tools/python/xen/xend/XendConfig.py
> ===================================================================
> --- xen-unstable.hg.orig/tools/python/xen/xend/XendConfig.py	2009-04-23 11:38:54.000000000 +1000
> +++ xen-unstable.hg/tools/python/xen/xend/XendConfig.py	2009-04-23 11:38:58.000000000 +1000
> @@ -1285,7 +1285,7 @@ class XendConfig(dict):
>                      dpci_record = {
>                          'VM': self['uuid'],
>                          'PPCI': ppci_uuid,
> -                        'hotplug_slot': pci_dev.get('vslot', 0)
> +                        'hotplug_slot': pci_dev.get('requested_vslot', 0)
>                      }
>  
>                      dpci_opts = pci_dev.get('opts')
> @@ -1847,7 +1847,7 @@ class XendConfig(dict):
>                      dpci_record = {
>                          'VM': self['uuid'],
>                          'PPCI': ppci_uuid,
> -                        'hotplug_slot': pci_dev.get('vslot', 0)
> +                        'hotplug_slot': pci_dev.get('requested_vslot', 0)
>                      }
>  
>                      dpci_opts = pci_dev.get('opts')
> Index: xen-unstable.hg/tools/python/xen/xend/server/pciif.py
> ===================================================================
> --- xen-unstable.hg.orig/tools/python/xen/xend/server/pciif.py	2009-04-23 11:38:54.000000000 +1000
> +++ xen-unstable.hg/tools/python/xen/xend/server/pciif.py	2009-04-23 11:38:58.000000000 +1000
> @@ -79,7 +79,7 @@ class PciController(DevController):
>              bus = parse_hex(pci_config.get('bus', 0))
>              slot = parse_hex(pci_config.get('slot', 0))
>              func = parse_hex(pci_config.get('func', 0))            
> -            vslot = parse_hex(pci_config.get('vslot', 0))
> +            requested_vslot = parse_hex(pci_config.get('requested_vslot', 0))
>  
>              opts = pci_config.get('opts', '')
>              if len(opts) > 0:
> @@ -90,7 +90,7 @@ class PciController(DevController):
>              back['dev-%i' % pcidevid] = "%04x:%02x:%02x.%01x" % \
>                                          (domain, bus, slot, func)
>              back['uuid-%i' % pcidevid] = pci_config.get('uuid', '')
> -            back['vslot-%i' % pcidevid] = "%02x" % vslot
> +            back['vslot-%i' % pcidevid] = "%02x" % requested_vslot
>              pcidevid += 1
>  
>          if vslots != "":
> Index: xen-unstable.hg/tools/python/xen/xm/create.py
> ===================================================================
> --- xen-unstable.hg.orig/tools/python/xen/xm/create.py	2009-04-23 11:38:54.000000000 +1000
> +++ xen-unstable.hg/tools/python/xen/xm/create.py	2009-04-23 11:38:58.000000000 +1000
> @@ -710,7 +710,8 @@ def configure_pci(config_devs, vals):
>              config_pci_opts.append([k, d[k]])
>  
>          config_pci_bdf = ['dev', ['domain', domain], ['bus', bus], \
> -                          ['slot', slot], ['func', func], ['vslot', vslot]]
> +                          ['slot', slot], ['func', func],
> +                          ['requested_vslot', vslot]]
>          map(f, d.keys())
>          if len(config_pci_opts)>0:
>              config_pci_bdf.append(['opts', config_pci_opts])
>
>   

-- 
best rgds,
edwin

      reply	other threads:[~2009-04-23  9:13 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-22 17:30 [patch] xm: Fix hot-unplug of statically-assigned devices Simon Horman
2009-04-23  1:42 ` [patch v2] " Simon Horman
2009-04-23  9:13   ` Zhai, Edwin [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49F0313A.40508@intel.com \
    --to=edwin.zhai@intel.com \
    --cc=dexuan.cui@intel.com \
    --cc=horms@verge.net.au \
    --cc=kanno.masaki@jp.fujitsu.com \
    --cc=weidong.han@intel.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.