perf mmap: Add new return value logic for perf_mmap__read_init()
authorKan Liang <kan.liang@intel.com>
Thu, 18 Jan 2018 21:26:20 +0000 (13:26 -0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 15 Feb 2018 12:52:49 +0000 (09:52 -0300)
Improve the readability by using meaningful enum (-EAGAIN, -EINVAL and
0) to replace the three returning states (0, -1 and 1).

Suggested-by: Wang Nan <wangnan0@huawei.com>
Signed-off-by: Kan Liang <kan.liang@intel.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/r/1516310792-208685-6-git-send-email-kan.liang@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/mmap.c

index c19a4e6..38fa69d 100644 (file)
@@ -282,7 +282,7 @@ int perf_mmap__read_init(struct perf_mmap *md, bool overwrite,
        *endp = overwrite ? old : head;
 
        if (*startp == *endp)
-               return 0;
+               return -EAGAIN;
 
        size = *endp - *startp;
        if (size > (unsigned long)(md->mask) + 1) {
@@ -291,7 +291,7 @@ int perf_mmap__read_init(struct perf_mmap *md, bool overwrite,
 
                        md->prev = head;
                        perf_mmap__consume(md, overwrite);
-                       return 0;
+                       return -EAGAIN;
                }
 
                /*
@@ -299,10 +299,10 @@ int perf_mmap__read_init(struct perf_mmap *md, bool overwrite,
                 * most of data from it.
                 */
                if (overwrite_rb_find_range(data, md->mask, head, startp, endp))
-                       return -1;
+                       return -EINVAL;
        }
 
-       return 1;
+       return 0;
 }
 
 int perf_mmap__push(struct perf_mmap *md, bool overwrite,
@@ -316,8 +316,8 @@ int perf_mmap__push(struct perf_mmap *md, bool overwrite,
        int rc = 0;
 
        rc = perf_mmap__read_init(md, overwrite, &start, &end);
-       if (rc < 1)
-               return rc;
+       if (rc < 0)
+               return (rc == -EAGAIN) ? 0 : -1;
 
        size = end - start;