diff options
author | Chen Hanxiao <chenhanxiao@cn.fujitsu.com> | 2014-01-10 17:37:55 +0800 |
---|---|---|
committer | Cole Robinson <crobinso@redhat.com> | 2014-01-11 14:53:19 -0500 |
commit | a90a375bda19fca19aed591d311774ae992b3beb (patch) | |
tree | b1e5568a340e072532d1f3f30e4792b2cc0d0fdc /virtManager | |
parent | 8419835b1d68e5bfad1005b00c87d302279a118f (diff) | |
download | virt-manager-a90a375bda19fca19aed591d311774ae992b3beb.tar.gz |
virt-manager: add support for showing panic notifier device
Signed-off-by: Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Diffstat (limited to 'virtManager')
-rw-r--r-- | virtManager/details.py | 28 | ||||
-rw-r--r-- | virtManager/domain.py | 3 |
2 files changed, 29 insertions, 2 deletions
diff --git a/virtManager/details.py b/virtManager/details.py index 2940b785..40512dad 100644 --- a/virtManager/details.py +++ b/virtManager/details.py @@ -126,7 +126,8 @@ EDIT_TPM_TYPE, HW_LIST_TYPE_SMARTCARD, HW_LIST_TYPE_REDIRDEV, HW_LIST_TYPE_TPM, - HW_LIST_TYPE_RNG) = range(20) + HW_LIST_TYPE_RNG, + HW_LIST_TYPE_PANIC) = range(21) remove_pages = [HW_LIST_TYPE_NIC, HW_LIST_TYPE_INPUT, HW_LIST_TYPE_GRAPHICS, HW_LIST_TYPE_SOUND, HW_LIST_TYPE_CHAR, @@ -134,7 +135,7 @@ remove_pages = [HW_LIST_TYPE_NIC, HW_LIST_TYPE_INPUT, HW_LIST_TYPE_WATCHDOG, HW_LIST_TYPE_CONTROLLER, HW_LIST_TYPE_FILESYSTEM, HW_LIST_TYPE_SMARTCARD, HW_LIST_TYPE_REDIRDEV, HW_LIST_TYPE_TPM, - HW_LIST_TYPE_RNG] + HW_LIST_TYPE_RNG, HW_LIST_TYPE_PANIC] # Boot device columns (BOOT_DEV_TYPE, @@ -1214,6 +1215,8 @@ class vmmDetails(vmmGObjectUI): self.refresh_tpm_page() elif pagetype == HW_LIST_TYPE_RNG: self.refresh_rng_page() + elif pagetype == HW_LIST_TYPE_PANIC: + self.refresh_panic_page() else: pagetype = -1 except Exception, e: @@ -3098,6 +3101,22 @@ class vmmDetails(vmmGObjectUI): # Device type specific properties, only show if apply to the cur dev show_ui("device_path") + def refresh_panic_page(self): + dev = self.get_hw_selection(HW_LIST_COL_DEVICE) + if not dev: + return + + def show_ui(param, val=None): + widgetname = "panic-" + param.replace("_", "-") + if not val: + val = getattr(dev, param) + + uihelpers.set_grid_row_visible(self.widget(widgetname), True) + self.widget(widgetname).set_text(val or "-") + + show_ui("type") + show_ui("iobase") + def refresh_rng_page(self): dev = self.get_hw_selection(HW_LIST_COL_DEVICE) values = { @@ -3622,6 +3641,11 @@ class vmmDetails(vmmGObjectUI): update_hwlist(HW_LIST_TYPE_RNG, rng, _("RNG"), "system-run") + # Populate list of Panic devices + for rng in self.vm.get_panic_devices(): + update_hwlist(HW_LIST_TYPE_PANIC, rng, + _("Panic Notifier"), "system-run") + devs = range(len(hw_list_model)) devs.reverse() for i in devs: diff --git a/virtManager/domain.py b/virtManager/domain.py index fc9cf066..efdb215e 100644 --- a/virtManager/domain.py +++ b/virtManager/domain.py @@ -60,6 +60,7 @@ def compare_device(origdev, newdev, idx): "redirdev" : ["bus" , "type", "vmmindex"], "tpm" : ["type" , "vmmindex"], "rng" : ["type" , "vmmindex"], + "panic" : ["type" , "vmmindex"], } if id(origdev) == id(newdev): @@ -1132,6 +1133,8 @@ class vmmDomain(vmmLibvirtObject): return self._build_device_list("tpm") def get_rng_devices(self): return self._build_device_list("rng") + def get_panic_devices(self): + return self._build_device_list("panic") def get_disk_devices(self, refresh_if_nec=True, inactive=False): devs = self._build_device_list("disk", refresh_if_nec, inactive) |