Commit-ID:  601d66d43309534eb7a268bdc42c205521014645
Gitweb:     https://git.kernel.org/tip/601d66d43309534eb7a268bdc42c205521014645
Author:     Arnaldo Carvalho de Melo <[email protected]>
AuthorDate: Mon, 17 Dec 2018 11:55:57 -0300
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Tue, 18 Dec 2018 16:07:42 -0300

perf trace beauty: Print O_RDONLY when (flags & O_ACCMODE) == 0

And there are more flags, to match strace's output.

 openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3

Also to help with regression tests.

Cc: Adrian Hunter <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: Luis Cláudio Gonçalves <[email protected]>
Cc: Namhyung Kim <[email protected]>
Cc: Wang Nan <[email protected]>
Link: https://lkml.kernel.org/n/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
---
 tools/perf/trace/beauty/open_flags.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/perf/trace/beauty/open_flags.c 
b/tools/perf/trace/beauty/open_flags.c
index 6da48893a1bb..78f6566ef110 100644
--- a/tools/perf/trace/beauty/open_flags.c
+++ b/tools/perf/trace/beauty/open_flags.c
@@ -27,8 +27,10 @@ size_t open__scnprintf_flags(unsigned long flags, char *bf, 
size_t size, bool sh
        const char *prefix = "O_";
        int printed = 0;
 
+       if ((flags & O_ACCMODE) == O_RDONLY)
+               printed = scnprintf(bf, size, "%s%s", show_prefix ? prefix : 
"", "RDONLY");
        if (flags == 0)
-               return scnprintf(bf, size, "%s%s", show_prefix ? prefix : "", 
"RDONLY");
+               return printed;
 #define        P_FLAG(n) \
        if (flags & O_##n) { \
                printed += scnprintf(bf + printed, size - printed, "%s%s%s", 
printed ? "|" : "", show_prefix ? prefix : "", #n); \

Reply via email to