perf tests: Factor attr tests WRITE_ASS macro
authorJiri Olsa <jolsa@redhat.com>
Mon, 5 Nov 2012 15:49:37 +0000 (16:49 +0100)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 5 Nov 2012 17:03:59 +0000 (14:03 -0300)
Changing WRITE_ASS macro per Namhyung's comments, so the main usage case
takes only attr field name and format string.

Suggested-by: Namhyung Kim <namhyung.kim@lge.com>
Signed-off-by: Jiri Olsa <jolsa@redhat.com>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1352130579-13451-3-git-send-email-jolsa@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/tests/attr.c

index aacad82634c67acc51c37514e79d4ea2a5b29058..1389d69d5fd19fe2752671a4932958465adaafec 100644 (file)
@@ -44,7 +44,7 @@ void test_attr__init(void)
 
 #define BUFSIZE 1024
 
-#define WRITE_ASS(str, fmt, data)                                      \
+#define __WRITE_ASS(str, fmt, data)                                    \
 do {                                                                   \
        char buf[BUFSIZE];                                              \
        size_t size;                                                    \
@@ -58,6 +58,8 @@ do {                                                                  \
                                                                        \
 } while (0)
 
+#define WRITE_ASS(field, fmt) __WRITE_ASS(field, fmt, attr->field)
+
 static int store_event(struct perf_event_attr *attr, pid_t pid, int cpu,
                       int fd, int group_fd, unsigned long flags)
 {
@@ -81,51 +83,50 @@ static int store_event(struct perf_event_attr *attr, pid_t pid, int cpu,
        }
 
        /* syscall arguments */
-       WRITE_ASS(fd,       "d", fd);
-       WRITE_ASS(group_fd, "d", group_fd);
-       WRITE_ASS(cpu,      "d", cpu);
-       WRITE_ASS(pid,      "d", pid);
-       WRITE_ASS(flags,   "lu", flags);
+       __WRITE_ASS(fd,       "d", fd);
+       __WRITE_ASS(group_fd, "d", group_fd);
+       __WRITE_ASS(cpu,      "d", cpu);
+       __WRITE_ASS(pid,      "d", pid);
+       __WRITE_ASS(flags,   "lu", flags);
 
        /* struct perf_event_attr */
-       WRITE_ASS(type,   PRIu32,  attr->type);
-       WRITE_ASS(size,   PRIu32,  attr->size);
-       WRITE_ASS(config,  "llu",  attr->config);
-       WRITE_ASS(sample_period, "llu", attr->sample_period);
-       WRITE_ASS(sample_type,   "llu", attr->sample_type);
-       WRITE_ASS(read_format,   "llu", attr->read_format);
-       WRITE_ASS(disabled,       "d", attr->disabled);
-       WRITE_ASS(inherit,        "d", attr->inherit);
-       WRITE_ASS(pinned,         "d", attr->pinned);
-       WRITE_ASS(exclusive,      "d", attr->exclusive);
-       WRITE_ASS(exclude_user,   "d", attr->exclude_user);
-       WRITE_ASS(exclude_kernel, "d", attr->exclude_kernel);
-       WRITE_ASS(exclude_hv,     "d", attr->exclude_hv);
-       WRITE_ASS(exclude_idle,   "d", attr->exclude_idle);
-       WRITE_ASS(mmap,           "d", attr->mmap);
-       WRITE_ASS(comm,           "d", attr->comm);
-       WRITE_ASS(freq,           "d", attr->freq);
-       WRITE_ASS(inherit_stat,   "d", attr->inherit_stat);
-       WRITE_ASS(enable_on_exec, "d", attr->enable_on_exec);
-       WRITE_ASS(task,           "d", attr->task);
-       WRITE_ASS(watermask,      "d", attr->watermark);
-       WRITE_ASS(precise_ip,     "d", attr->precise_ip);
-       WRITE_ASS(mmap_data,      "d", attr->mmap_data);
-       WRITE_ASS(sample_id_all,  "d", attr->sample_id_all);
-       WRITE_ASS(exclude_host,   "d", attr->exclude_host);
-       WRITE_ASS(exclude_guest,  "d", attr->exclude_guest);
-       WRITE_ASS(exclude_callchain_kernel, "d",
-                 attr->exclude_callchain_kernel);
-       WRITE_ASS(exclude_callchain_user, "d",
-                 attr->exclude_callchain_user);
-       WRITE_ASS(wakeup_events, PRIu32, attr->wakeup_events);
-       WRITE_ASS(bp_type, PRIu32, attr->bp_type);
-       WRITE_ASS(config1, "llu", attr->config1);
-       WRITE_ASS(config2, "llu", attr->config2);
-       WRITE_ASS(branch_sample_type, "llu", attr->branch_sample_type);
-       WRITE_ASS(sample_regs_user,   "llu", attr->sample_regs_user);
-       WRITE_ASS(sample_stack_user,  PRIu32, attr->sample_stack_user);
-       WRITE_ASS(optional, "d", 0);
+       WRITE_ASS(type,   PRIu32);
+       WRITE_ASS(size,   PRIu32);
+       WRITE_ASS(config,  "llu");
+       WRITE_ASS(sample_period, "llu");
+       WRITE_ASS(sample_type,   "llu");
+       WRITE_ASS(read_format,   "llu");
+       WRITE_ASS(disabled,       "d");
+       WRITE_ASS(inherit,        "d");
+       WRITE_ASS(pinned,         "d");
+       WRITE_ASS(exclusive,      "d");
+       WRITE_ASS(exclude_user,   "d");
+       WRITE_ASS(exclude_kernel, "d");
+       WRITE_ASS(exclude_hv,     "d");
+       WRITE_ASS(exclude_idle,   "d");
+       WRITE_ASS(mmap,           "d");
+       WRITE_ASS(comm,           "d");
+       WRITE_ASS(freq,           "d");
+       WRITE_ASS(inherit_stat,   "d");
+       WRITE_ASS(enable_on_exec, "d");
+       WRITE_ASS(task,           "d");
+       WRITE_ASS(watermask,      "d");
+       WRITE_ASS(precise_ip,     "d");
+       WRITE_ASS(mmap_data,      "d");
+       WRITE_ASS(sample_id_all,  "d");
+       WRITE_ASS(exclude_host,   "d");
+       WRITE_ASS(exclude_guest,  "d");
+       WRITE_ASS(exclude_callchain_kernel, "d");
+       WRITE_ASS(exclude_callchain_user, "d");
+       WRITE_ASS(wakeup_events, PRIu32);
+       WRITE_ASS(bp_type, PRIu32);
+       WRITE_ASS(config1, "llu");
+       WRITE_ASS(config2, "llu");
+       WRITE_ASS(branch_sample_type, "llu");
+       WRITE_ASS(sample_regs_user,   "llu");
+       WRITE_ASS(sample_stack_user,  PRIu32);
+
+       __WRITE_ASS(optional, "d", 0);
 
        fclose(file);
        return 0;