Access checking with F_OK was replaced with the better readable
os.path.exists().

On Linux exists() returns False when the user doesn't have sufficient
permissions for statting the directory. Therefore the error message
now states that sufficient rights are needed when the check fails.

Also added check for /sys/kernel/debug/tracing/.
---
 scripts/kvm/kvm_stat | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/scripts/kvm/kvm_stat b/scripts/kvm/kvm_stat
index e7f3595..746a49b 100755
--- a/scripts/kvm/kvm_stat
+++ b/scripts/kvm/kvm_stat
@@ -473,12 +473,18 @@ class Stats:
                 self.values[key] = (newval, newdelta)
         return self.values
 
-if not os.access('/sys/kernel/debug', os.F_OK):
-    print 'Please enable CONFIG_DEBUG_FS in your kernel'
+if not os.path.exists('/sys/kernel/debug'):
+    sys.stderr.write('Please enable CONFIG_DEBUG_FS in your kernel.')
     sys.exit(1)
-if not os.access(PATH_DEBUGFS, os.F_OK):
-    print "Please mount debugfs ('mount -t debugfs debugfs /sys/kernel/debug')"
-    print "and ensure the kvm modules are loaded"
+if not os.path.exists(PATH_DEBUGFS):
+    sys.stderr.write("Please make sure, that debugfs is mounted and "
+                     "readable by the current user:\n"
+                     "('mount -t debugfs debugfs /sys/kernel/debug')\n"
+                     "Also ensure, that the kvm modules are loaded.\n")
+    sys.exit(1)
+if not os.path.exists(PATH_TRACING):
+    sys.stderr.write("Please make {0} readable by the current user.\n"
+                     .format(PATH_TRACING))
     sys.exit(1)
 
 LABEL_WIDTH = 40
-- 
2.3.0


Reply via email to