From 46207f479b6f72609c430f65005a84fdd059c2aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaroslav=20=C5=A0karvada?= Date: Fri, 22 May 2020 20:20:36 +0200 Subject: [PATCH] Fixed crash when running inside container MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #267 Signed-off-by: Jaroslav Škarvada --- tuned/hardware/inventory.py | 6 +++++- tuned/plugins/plugin_cpu.py | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/tuned/hardware/inventory.py b/tuned/hardware/inventory.py index cc20b7a..160467f 100644 --- a/tuned/hardware/inventory.py +++ b/tuned/hardware/inventory.py @@ -25,7 +25,11 @@ class Inventory(object): buffer_size = consts.CFG_DEF_UDEV_BUFFER_SIZE if (set_receive_buffer_size): - self._udev_monitor.set_receive_buffer_size(buffer_size) + try: + self._udev_monitor.set_receive_buffer_size(buffer_size) + except EnvironmentError: + log.warn("cannot set udev monitor receive buffer size, we are probably running inside " + + "container or with limited capabilites, Tuned functionality may be limited") if monitor_observer_factory is None: monitor_observer_factory = _MonitorObserverFactory() diff --git a/tuned/plugins/plugin_cpu.py b/tuned/plugins/plugin_cpu.py index b6f14b1..de1abad 100644 --- a/tuned/plugins/plugin_cpu.py +++ b/tuned/plugins/plugin_cpu.py @@ -150,7 +150,10 @@ class CPULatencyPlugin(base.Plugin): instance._first_instance = False log.info("Latency settings from non-first CPU plugin instance '%s' will be ignored." % instance.name) - instance._first_device = list(instance.assigned_devices)[0] + try: + instance._first_device = list(instance.assigned_devices)[0] + except IndexError: + instance._first_device = None def _instance_cleanup(self, instance): if instance._first_instance: