Sto eseguendo test debian con il kernel 4.1 e la versione 4.1 dello perf
strumento. In questa versione sembrano aver aggiunto una sorta di protezione per impedire agli utenti normali di raccogliere dati da quello strumento. Quindi, in esecuzione perf
come utente normale darà questo errore:
perf stat ls
Error:
You may not have permission to collect stats.
Consider tweaking /proc/sys/kernel/perf_event_paranoid:
-1 - Not paranoid at all
0 - Disallow raw tracepoint access for unpriv
1 - Disallow cpu events for unpriv
2 - Disallow kernel profiling for unpriv
perf_event_paranoid
contiene 3 nella mia installazione. Sfortunatamente non posso cambiare quel file anche come root. Come posso consentire al mio utente di utilizzare perf
senza i diritti sudo?
Ho un'applicazione che vorrei fare il benchmark che non ha bisogno di root e non voglio eseguirla come root per confrontarla.
perf stat -e cycles:u
? Il valore "3" di èperf_event_paranoid
stato aggiunto nel 2016 lwn.net/Articles/696216 "Disallowing perf_event_open ()" ed è stato abilitato in "Android e Debian" (anche lkml.org/lkml/2016/1/11/587 bugs.launchpad. net / bugs / 1612790 debian.org/security/2017/dsa-3791 )