diff --git a/docs/man/xend-config.sxp.pod.5 b/docs/man/xend-config.sxp.pod.5 --- a/docs/man/xend-config.sxp.pod.5 +++ b/docs/man/xend-config.sxp.pod.5 @@ -115,6 +115,16 @@ migration, such as for example virtual T migration, such as for example virtual TPM migration. An example script is I. +=item I + +Integer value that tells xend how long it should wait for a new device +to be created. Defaults to I<100>. + +=item I + +Integer value that tells xend how long it should wait for a device to +be destroyed. Defaults to I<100>. + =back =head1 EXAMPLES diff --git a/tools/examples/xend-config.sxp b/tools/examples/xend-config.sxp --- a/tools/examples/xend-config.sxp +++ b/tools/examples/xend-config.sxp @@ -254,3 +254,9 @@ # Path where persistent domain configuration is stored. # Default is /var/lib/xend/domains/ #(xend-domains-path /var/lib/xend/domains) + +# Number of seconds xend will wait for device creation and +# destruction +#(device-create-timeout 100) +#(device-destroy-timeout 100) + diff --git a/tools/python/xen/xend/XendOptions.py b/tools/python/xen/xend/XendOptions.py --- a/tools/python/xen/xend/XendOptions.py +++ b/tools/python/xen/xend/XendOptions.py @@ -140,6 +140,12 @@ class XendOptions: """Default rotation count of qemu-dm log file.""" qemu_dm_logrotate_count = 10 + + """Default timeout for device creation.""" + device_create_timeout_default = 100 + + """Default timeout for device destruction.""" + device_destroy_timeout_default = 100 def __init__(self): self.configure() @@ -368,6 +374,14 @@ class XendOptions: return self.get_config_int("qemu-dm-logrotate-count", self.qemu_dm_logrotate_count) + def get_device_create_timeout(self): + return self.get_config_int("device-create-timeout", + self.device_create_timeout_default) + + def get_device_destroy_timeout(self): + return self.get_config_int("device-destroy-timeout", + self.device_destroy_timeout_default) + class XendOptionsFile(XendOptions): diff --git a/tools/python/xen/xend/server/DevConstants.py b/tools/python/xen/xend/server/DevConstants.py --- a/tools/python/xen/xend/server/DevConstants.py +++ b/tools/python/xen/xend/server/DevConstants.py @@ -16,8 +16,12 @@ # Copyright (C) 2005 XenSource Ltd #============================================================================ -DEVICE_CREATE_TIMEOUT = 100 -DEVICE_DESTROY_TIMEOUT = 100 +from xen.xend import XendOptions + +xoptions = XendOptions.instance() + +DEVICE_CREATE_TIMEOUT = xoptions.get_device_create_timeout(); +DEVICE_DESTROY_TIMEOUT = xoptions.get_device_destroy_timeout(); HOTPLUG_STATUS_NODE = "hotplug-status" HOTPLUG_ERROR_NODE = "hotplug-error" HOTPLUG_STATUS_ERROR = "error"