[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] blktap2: seperate blktap1/blktap2 disk types
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1246877222 -3600 # Node ID 07dd575147b0535a95efbb4950b6d36407c3b53c # Parent 7605b318619f71d4786ecca8d3fbc17a7b237e3d blktap2: seperate blktap1/blktap2 disk types * seperate blktap1/blktap2 disk types * use blktap1 when driver is not in explicit list of blktap2 drivers, * rather than current check against list of blktap1 only drivers * remove 'tapdisk' disk type (it is not a tapdisk disk type) and fix * tapdisk disk type check in XenConfig Signed-off-by: Ryan O'Connor <rjo@xxxxxxxxx> --- tools/python/xen/xend/XendConfig.py | 8 ++++++-- tools/python/xen/xend/server/BlktapController.py | 17 ++++++++++++----- 2 files changed, 18 insertions(+), 7 deletions(-) diff -r 7605b318619f -r 07dd575147b0 tools/python/xen/xend/XendConfig.py --- a/tools/python/xen/xend/XendConfig.py Mon Jul 06 11:46:22 2009 +0100 +++ b/tools/python/xen/xend/XendConfig.py Mon Jul 06 11:47:02 2009 +0100 @@ -1379,9 +1379,13 @@ class XendConfig(dict): else: # Save uname for next domain start. dev_info['required_uname'] = dev_info['uname'] - if dev_info['uname'].split(':')[1] not in blktap_disk_types: + tap_disk_type = dev_info['uname'].split(':')[1] + # tapdisk uname may be 'tap:<driver>' or 'tap:tapdisk:<driver>' + if tap_disk_type == 'tapdisk': + tap_disk_type = dev_info['uname'].split(':')[2] + if tap_disk_type not in blktap_disk_types: raise XendConfigError("tap:%s not a valid disk type" % - dev_info['uname'].split(':')[1]) + tap_disk_type) if dev_type == 'vif': if not dev_info.get('mac'): diff -r 7605b318619f -r 07dd575147b0 tools/python/xen/xend/server/BlktapController.py --- a/tools/python/xen/xend/server/BlktapController.py Mon Jul 06 11:46:22 2009 +0100 +++ b/tools/python/xen/xend/server/BlktapController.py Mon Jul 06 11:47:02 2009 +0100 @@ -13,17 +13,24 @@ TAPDISK_DEVICE = '/dev/xen/blktap-2/tap TAPDISK_DEVICE = '/dev/xen/blktap-2/tapdev' TAPDISK_CONTROL = TAPDISK_SYSFS + '/blktap' -blktap_disk_types = [ +blktap1_disk_types = set([ 'aio', 'sync', 'vmdk', 'ram', 'qcow', 'qcow2', + 'ioemu', + ]) + +blktap2_disk_types = set([ + 'aio', + 'ram', + 'qcow', 'vhd', - 'ioemu', - 'tapdisk', - ] + ]) + +blktap_disk_types = blktap1_disk_types | blktap2_disk_types def doexec(args, inputtext=None): """Execute a subprocess, then return its return code, stdout and stderr""" @@ -151,7 +158,7 @@ class Blktap2Controller(BlktapController if typ in ('tap'): if subtyp in ('tapdisk'): - if params in ('ioemu', 'qcow2', 'vmdk', 'sync') or not blktap2_installed: + if params not in blktap2_disk_types or not blktap2_installed: # pass this device off to BlktapController log.warn('WARNING: using deprecated blktap module') self.deviceClass = 'tap' _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |