mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 10:11:27 +01:00
xend: Restore uname of blktap for managed domains
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
This commit is contained in:
1 parent
4e0aaab31b
commit
add9e579b6
1 file changed
+9
-1
@@ -1120,6 +1120,8 @@ class XendConfig(dict):
|
||||
if sxp.child_value(config, 'bootable', None) is None:
|
||||
is_bootable = dev_cfg.get('bootable', 0)
|
||||
config.append(['bootable', int(is_bootable)])
|
||||
if dev_cfg.has_key('required_uname'):
|
||||
config.append(['required_uname', dev_cfg['required_uname']])
|
||||
config.append(['VDI', dev_cfg.get('VDI', '')])
|
||||
|
||||
sxpr.append(['device', config])
|
||||
@@ -1370,10 +1372,16 @@ class XendConfig(dict):
|
||||
dev_info['driver'] = 'paravirtualised'
|
||||
|
||||
if dev_type == 'tap' or dev_type == 'tap2':
|
||||
if dev_info.has_key('required_uname'):
|
||||
# Restore uname by required_uname because uname might
|
||||
# be replaced with 'phy:/dev/xen/blktap-2/tapdev*'.
|
||||
dev_info['uname'] = dev_info['required_uname']
|
||||
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:
|
||||
raise XendConfigError("tap:%s not a valid disk type" %
|
||||
dev_info['uname'].split(':')[1])
|
||||
dev_info['required_uname'] = dev_info['uname']
|
||||
|
||||
if dev_type == 'vif':
|
||||
if not dev_info.get('mac'):
|
||||
|
||||