On Fri, 9 Aug 2019 11:06:21 +0300 "Yordan Karadzhov (VMware)" <y.karadz@xxxxxxxxx> wrote: > Running the KernelShark GUI with Root privileges is not recommended due > to security reasons. The user will be allowed to continue on its own risk. > > Suggested-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx> > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204475 > Signed-off-by: Yordan Karadzhov (VMware) <y.karadz@xxxxxxxxx> > --- > kernel-shark/src/KsMainWindow.cpp | 28 ++++++++++++++++++++++++++++ > kernel-shark/src/KsMainWindow.hpp | 2 ++ > 2 files changed, 30 insertions(+) > > diff --git a/kernel-shark/src/KsMainWindow.cpp b/kernel-shark/src/KsMainWindow.cpp > index 6439265..2560bf8 100644 > --- a/kernel-shark/src/KsMainWindow.cpp > +++ b/kernel-shark/src/KsMainWindow.cpp > @@ -76,6 +76,9 @@ KsMainWindow::KsMainWindow(QWidget *parent) > _createMenus(); > _initCapture(); > > + if (geteuid() == 0) > + _rootWarning(); > + > _splitter.addWidget(&_graph); > _splitter.addWidget(&_view); > setCentralWidget(&_splitter); > @@ -1271,3 +1274,28 @@ void KsMainWindow::_deselectB() > _mState.updateLabels(); > _graph.glPtr()->model()->update(); > } > + > +void KsMainWindow::_rootWarning() > +{ > + QString cbFlag("noRootWorn"); Mike already pointed this out (Thanks Mike!) > + > + if (_settings.value(cbFlag).toBool()) > + return; > + > + QMessageBox warn; > + warn.setText("KernelShark will have Root privileges."); > + warn.setInformativeText("Continue on your one risk."); Probably better to say: "KernelShark is running with Root privileges." "Continue at your own risk." -- Steve > + warn.setIcon(QMessageBox::Warning); > + warn.setStandardButtons(QMessageBox::Close); > + > + QCheckBox cb("Don't show this message again."); > + > + auto lamCbChec = [&] (int state) { > + if (state) > + _settings.setValue(cbFlag, true); > + }; > + > + connect(&cb, &QCheckBox::stateChanged, lamCbChec); > + warn.setCheckBox(&cb); > + warn.exec(); > +} > diff --git a/kernel-shark/src/KsMainWindow.hpp b/kernel-shark/src/KsMainWindow.hpp > index 62e66a0..4a7b8ab 100644 > --- a/kernel-shark/src/KsMainWindow.hpp > +++ b/kernel-shark/src/KsMainWindow.hpp > @@ -238,6 +238,8 @@ private: > > void _deselectB(); > > + void _rootWarning(); > + > void _updateFilterMenu(); > > void _filterSyncCBoxUpdate(kshark_context *kshark_ctx);