Linux-Trace-Devel Archive on
 help / color / Atom feed
* kernel-shark: Suppress "Root privileges are required" if already root
@ 2019-07-23 20:59 Steven Rostedt
  0 siblings, 0 replies; only message in thread
From: Steven Rostedt @ 2019-07-23 20:59 UTC (permalink / raw)
  To: Linux Trace Devel; +Cc: Yordan Karadzhov

From: Steven Rostedt (VMware) <>

If the tracefs directory is configured into the kernel, and
kshark-record  fails to find the tracing directory, it should test if
it already has root privileges (geteuid() returns zero), before posting
a message "Root privileges are required" as that can confuse users.

Signed-off-by: Steven Rostedt (VMware) <>
diff --git a/kernel-shark/src/KsCaptureDialog.cpp b/kernel-shark/src/KsCaptureDialog.cpp
index 2e6e8f9c..dbf73302 100644
--- a/kernel-shark/src/KsCaptureDialog.cpp
+++ b/kernel-shark/src/KsCaptureDialog.cpp
@@ -18,6 +18,12 @@
 #include "KsCmakeDef.hpp"
 #include "KsCaptureDialog.hpp"
+extern "C" {
+  // To get access to geteuid()
+  #include <unistd.h>
+  #include <sys/types.h>
 static inline tep_handle *local_events()
 	return tracecmd_local_events(tracecmd_get_tracing_dir());
@@ -65,7 +71,9 @@ KsCaptureControl::KsCaptureControl(QWidget *parent)
 		if (!_localTEP)
 			message += "Cannot find or mount tracing directory.\n";
-		if (!pluginList.count())
+		// geteuid() returns 0 if running as effective id of root
+		if (!pluginList.count() && geteuid())
 			message += "Root privileges are required.\n";
 		QLabel *errorLabel = new QLabel(message);

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, back to index

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-23 20:59 kernel-shark: Suppress "Root privileges are required" if already root Steven Rostedt

Linux-Trace-Devel Archive on

Archives are clonable:
	git clone --mirror linux-trace-devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-trace-devel linux-trace-devel/ \
	public-inbox-index linux-trace-devel

Example config snippet for mirrors

Newsgroup available over NNTP:

AGPL code for this site: git clone public-inbox