OSDN Git Service

perf beauty ioctl cmd: The 'fd' arg is signed
authorArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 12 Feb 2019 13:12:28 +0000 (10:12 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 14 Feb 2019 16:31:11 +0000 (13:31 -0300)
It is possible to pass a negative number as the fd and that has to be
handled, so stop using 'unsigned int fd' in the ioctl syscall 'cmd'
beautifier.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Luis Cláudio Gonçalves <lclaudio@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: https://lkml.kernel.org/n/tip-b7qwa0l19dswa09h3s41akfu@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/trace/beauty/ioctl.c

index 620350d..52242fa 100644 (file)
@@ -175,7 +175,7 @@ static size_t ioctl__scnprintf_cmd(unsigned long cmd, char *bf, size_t size, boo
 size_t syscall_arg__scnprintf_ioctl_cmd(char *bf, size_t size, struct syscall_arg *arg)
 {
        unsigned long cmd = arg->val;
-       unsigned int fd = syscall_arg__val(arg, 0);
+       int fd = syscall_arg__val(arg, 0);
        struct file *file = thread__files_entry(arg->thread, fd);
 
        if (file != NULL) {