All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/4] perf: Add more syscalls to benchmark
@ 2022-11-10  3:50 Tiezhu Yang
  2022-11-10  3:50 ` [PATCH v5 1/4] tools x86: Keep list sorted by number in unistd_{32,64}.h Tiezhu Yang
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: Tiezhu Yang @ 2022-11-10  3:50 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo
  Cc: Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	linux-kernel, linux-perf-users

Tested on x86_64, arm64, mips64 and loongarch64.

Tiezhu Yang (4):
  tools x86: Keep list sorted by number in unistd_{32,64}.h
  perf bench syscall: Introduce bench_syscall_common()
  perf bench syscall: Add getpgid syscall benchmark
  perf bench syscall: Add execve syscall benchmark

 tools/arch/x86/include/uapi/asm/unistd_32.h | 23 ++++++---
 tools/arch/x86/include/uapi/asm/unistd_64.h | 23 ++++++---
 tools/perf/bench/bench.h                    |  2 +
 tools/perf/bench/syscall.c                  | 76 +++++++++++++++++++++++++++--
 tools/perf/builtin-bench.c                  |  2 +
 5 files changed, 108 insertions(+), 18 deletions(-)

-- 
2.1.0


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v5 1/4] tools x86: Keep list sorted by number in unistd_{32,64}.h
  2022-11-10  3:50 [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
@ 2022-11-10  3:50 ` Tiezhu Yang
  2022-11-10  3:50 ` [PATCH v5 2/4] perf bench syscall: Introduce bench_syscall_common() Tiezhu Yang
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 10+ messages in thread
From: Tiezhu Yang @ 2022-11-10  3:50 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo
  Cc: Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	linux-kernel, linux-perf-users

It is better to keep list sorted by number in unistd_{32,64}.h,
so that we can add more syscall number to a proper position.

This is preparation for later patch, no functionality change.

Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
---
 tools/arch/x86/include/uapi/asm/unistd_32.h | 16 ++++++++--------
 tools/arch/x86/include/uapi/asm/unistd_64.h | 16 ++++++++--------
 2 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/tools/arch/x86/include/uapi/asm/unistd_32.h b/tools/arch/x86/include/uapi/asm/unistd_32.h
index 60a89db..e1cc62d 100644
--- a/tools/arch/x86/include/uapi/asm/unistd_32.h
+++ b/tools/arch/x86/include/uapi/asm/unistd_32.h
@@ -1,16 +1,16 @@
 /* SPDX-License-Identifier: GPL-2.0 */
-#ifndef __NR_perf_event_open
-# define __NR_perf_event_open 336
+#ifndef __NR_gettid
+#define __NR_gettid 224
 #endif
 #ifndef __NR_futex
-# define __NR_futex 240
-#endif
-#ifndef __NR_gettid
-# define __NR_gettid 224
+#define __NR_futex 240
 #endif
 #ifndef __NR_getcpu
-# define __NR_getcpu 318
+#define __NR_getcpu 318
+#endif
+#ifndef __NR_perf_event_open
+#define __NR_perf_event_open 336
 #endif
 #ifndef __NR_setns
-# define __NR_setns 346
+#define __NR_setns 346
 #endif
diff --git a/tools/arch/x86/include/uapi/asm/unistd_64.h b/tools/arch/x86/include/uapi/asm/unistd_64.h
index cb52a3a..ce8b7ab 100644
--- a/tools/arch/x86/include/uapi/asm/unistd_64.h
+++ b/tools/arch/x86/include/uapi/asm/unistd_64.h
@@ -1,16 +1,16 @@
 /* SPDX-License-Identifier: GPL-2.0 */
-#ifndef __NR_perf_event_open
-# define __NR_perf_event_open 298
+#ifndef __NR_gettid
+#define __NR_gettid 186
 #endif
 #ifndef __NR_futex
-# define __NR_futex 202
-#endif
-#ifndef __NR_gettid
-# define __NR_gettid 186
+#define __NR_futex 202
 #endif
-#ifndef __NR_getcpu
-# define __NR_getcpu 309
+#ifndef __NR_perf_event_open
+#define __NR_perf_event_open 298
 #endif
 #ifndef __NR_setns
 #define __NR_setns 308
 #endif
+#ifndef __NR_getcpu
+#define __NR_getcpu 309
+#endif
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v5 2/4] perf bench syscall: Introduce bench_syscall_common()
  2022-11-10  3:50 [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
  2022-11-10  3:50 ` [PATCH v5 1/4] tools x86: Keep list sorted by number in unistd_{32,64}.h Tiezhu Yang
@ 2022-11-10  3:50 ` Tiezhu Yang
  2022-11-10  3:50 ` [PATCH v5 3/4] perf bench syscall: Add getpgid syscall benchmark Tiezhu Yang
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 10+ messages in thread
From: Tiezhu Yang @ 2022-11-10  3:50 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo
  Cc: Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	linux-kernel, linux-perf-users

In the current code, there is only a basic syscall benchmark via
getppid, this is not enough. Introduce bench_syscall_common() so
that we can add more syscalls to benchmark.

This is preparation for later patch, no functionality change.

Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
---
 tools/arch/x86/include/uapi/asm/unistd_32.h |  3 +++
 tools/arch/x86/include/uapi/asm/unistd_64.h |  3 +++
 tools/perf/bench/syscall.c                  | 29 +++++++++++++++++++++++++----
 3 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/tools/arch/x86/include/uapi/asm/unistd_32.h b/tools/arch/x86/include/uapi/asm/unistd_32.h
index e1cc62d..4d8873a 100644
--- a/tools/arch/x86/include/uapi/asm/unistd_32.h
+++ b/tools/arch/x86/include/uapi/asm/unistd_32.h
@@ -1,4 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __NR_getppid
+#define __NR_getppid 64
+#endif
 #ifndef __NR_gettid
 #define __NR_gettid 224
 #endif
diff --git a/tools/arch/x86/include/uapi/asm/unistd_64.h b/tools/arch/x86/include/uapi/asm/unistd_64.h
index ce8b7ab..e29038a 100644
--- a/tools/arch/x86/include/uapi/asm/unistd_64.h
+++ b/tools/arch/x86/include/uapi/asm/unistd_64.h
@@ -1,4 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __NR_getppid
+#define __NR_getppid 110
+#endif
 #ifndef __NR_gettid
 #define __NR_gettid 186
 #endif
diff --git a/tools/perf/bench/syscall.c b/tools/perf/bench/syscall.c
index 9b75101..746fd71 100644
--- a/tools/perf/bench/syscall.c
+++ b/tools/perf/bench/syscall.c
@@ -30,25 +30,41 @@ static const char * const bench_syscall_usage[] = {
 	NULL
 };
 
-int bench_syscall_basic(int argc, const char **argv)
+static int bench_syscall_common(int argc, const char **argv, int syscall)
 {
 	struct timeval start, stop, diff;
 	unsigned long long result_usec = 0;
+	const char *name = NULL;
 	int i;
 
 	argc = parse_options(argc, argv, options, bench_syscall_usage, 0);
 
 	gettimeofday(&start, NULL);
 
-	for (i = 0; i < loops; i++)
-		getppid();
+	for (i = 0; i < loops; i++) {
+		switch (syscall) {
+		case __NR_getppid:
+			getppid();
+			break;
+		default:
+			break;
+		}
+	}
 
 	gettimeofday(&stop, NULL);
 	timersub(&stop, &start, &diff);
 
+	switch (syscall) {
+	case __NR_getppid:
+		name = "getppid()";
+		break;
+	default:
+		break;
+	}
+
 	switch (bench_format) {
 	case BENCH_FORMAT_DEFAULT:
-		printf("# Executed %'d getppid() calls\n", loops);
+		printf("# Executed %'d %s calls\n", loops, name);
 
 		result_usec = diff.tv_sec * 1000000;
 		result_usec += diff.tv_usec;
@@ -79,3 +95,8 @@ int bench_syscall_basic(int argc, const char **argv)
 
 	return 0;
 }
+
+int bench_syscall_basic(int argc, const char **argv)
+{
+	return bench_syscall_common(argc, argv, __NR_getppid);
+}
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v5 3/4] perf bench syscall: Add getpgid syscall benchmark
  2022-11-10  3:50 [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
  2022-11-10  3:50 ` [PATCH v5 1/4] tools x86: Keep list sorted by number in unistd_{32,64}.h Tiezhu Yang
  2022-11-10  3:50 ` [PATCH v5 2/4] perf bench syscall: Introduce bench_syscall_common() Tiezhu Yang
@ 2022-11-10  3:50 ` Tiezhu Yang
  2022-11-10  3:50 ` [PATCH v5 4/4] perf bench syscall: Add execve " Tiezhu Yang
  2022-12-03  9:19 ` [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
  4 siblings, 0 replies; 10+ messages in thread
From: Tiezhu Yang @ 2022-11-10  3:50 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo
  Cc: Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	linux-kernel, linux-perf-users

This commit adds a simple getpgid syscall benchmark, more syscall
benchmarks can be added in the future.

Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
---
 tools/arch/x86/include/uapi/asm/unistd_32.h |  3 +++
 tools/arch/x86/include/uapi/asm/unistd_64.h |  3 +++
 tools/perf/bench/bench.h                    |  1 +
 tools/perf/bench/syscall.c                  | 11 +++++++++++
 tools/perf/builtin-bench.c                  |  1 +
 5 files changed, 19 insertions(+)

diff --git a/tools/arch/x86/include/uapi/asm/unistd_32.h b/tools/arch/x86/include/uapi/asm/unistd_32.h
index 4d8873a..053122c 100644
--- a/tools/arch/x86/include/uapi/asm/unistd_32.h
+++ b/tools/arch/x86/include/uapi/asm/unistd_32.h
@@ -2,6 +2,9 @@
 #ifndef __NR_getppid
 #define __NR_getppid 64
 #endif
+#ifndef __NR_getpgid
+#define __NR_getpgid 132
+#endif
 #ifndef __NR_gettid
 #define __NR_gettid 224
 #endif
diff --git a/tools/arch/x86/include/uapi/asm/unistd_64.h b/tools/arch/x86/include/uapi/asm/unistd_64.h
index e29038a..54a6c4d 100644
--- a/tools/arch/x86/include/uapi/asm/unistd_64.h
+++ b/tools/arch/x86/include/uapi/asm/unistd_64.h
@@ -2,6 +2,9 @@
 #ifndef __NR_getppid
 #define __NR_getppid 110
 #endif
+#ifndef __NR_getpgid
+#define __NR_getpgid 121
+#endif
 #ifndef __NR_gettid
 #define __NR_gettid 186
 #endif
diff --git a/tools/perf/bench/bench.h b/tools/perf/bench/bench.h
index 6cefb43..0c03f12 100644
--- a/tools/perf/bench/bench.h
+++ b/tools/perf/bench/bench.h
@@ -34,6 +34,7 @@ int bench_numa(int argc, const char **argv);
 int bench_sched_messaging(int argc, const char **argv);
 int bench_sched_pipe(int argc, const char **argv);
 int bench_syscall_basic(int argc, const char **argv);
+int bench_syscall_getpgid(int argc, const char **argv);
 int bench_mem_memcpy(int argc, const char **argv);
 int bench_mem_memset(int argc, const char **argv);
 int bench_mem_find_bit(int argc, const char **argv);
diff --git a/tools/perf/bench/syscall.c b/tools/perf/bench/syscall.c
index 746fd71..6411b14 100644
--- a/tools/perf/bench/syscall.c
+++ b/tools/perf/bench/syscall.c
@@ -46,6 +46,9 @@ static int bench_syscall_common(int argc, const char **argv, int syscall)
 		case __NR_getppid:
 			getppid();
 			break;
+		case __NR_getpgid:
+			getpgid(0);
+			break;
 		default:
 			break;
 		}
@@ -58,6 +61,9 @@ static int bench_syscall_common(int argc, const char **argv, int syscall)
 	case __NR_getppid:
 		name = "getppid()";
 		break;
+	case __NR_getpgid:
+		name = "getpgid()";
+		break;
 	default:
 		break;
 	}
@@ -100,3 +106,8 @@ int bench_syscall_basic(int argc, const char **argv)
 {
 	return bench_syscall_common(argc, argv, __NR_getppid);
 }
+
+int bench_syscall_getpgid(int argc, const char **argv)
+{
+	return bench_syscall_common(argc, argv, __NR_getpgid);
+}
diff --git a/tools/perf/builtin-bench.c b/tools/perf/builtin-bench.c
index 334ab89..c9a02ac 100644
--- a/tools/perf/builtin-bench.c
+++ b/tools/perf/builtin-bench.c
@@ -52,6 +52,7 @@ static struct bench sched_benchmarks[] = {
 
 static struct bench syscall_benchmarks[] = {
 	{ "basic",	"Benchmark for basic getppid(2) calls",		bench_syscall_basic	},
+	{ "getpgid",	"Benchmark for getpgid(2) calls",		bench_syscall_getpgid	},
 	{ "all",	"Run all syscall benchmarks",			NULL			},
 	{ NULL,		NULL,						NULL			},
 };
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH v5 4/4] perf bench syscall: Add execve syscall benchmark
  2022-11-10  3:50 [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
                   ` (2 preceding siblings ...)
  2022-11-10  3:50 ` [PATCH v5 3/4] perf bench syscall: Add getpgid syscall benchmark Tiezhu Yang
@ 2022-11-10  3:50 ` Tiezhu Yang
  2022-12-03  9:19 ` [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
  4 siblings, 0 replies; 10+ messages in thread
From: Tiezhu Yang @ 2022-11-10  3:50 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo
  Cc: Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	linux-kernel, linux-perf-users

This commit adds the execve syscall benchmark, more syscall
benchmarks can be added in the future.

Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
---
 tools/arch/x86/include/uapi/asm/unistd_32.h |  3 +++
 tools/arch/x86/include/uapi/asm/unistd_64.h |  3 +++
 tools/perf/bench/bench.h                    |  1 +
 tools/perf/bench/syscall.c                  | 36 +++++++++++++++++++++++++++++
 tools/perf/builtin-bench.c                  |  1 +
 5 files changed, 44 insertions(+)

diff --git a/tools/arch/x86/include/uapi/asm/unistd_32.h b/tools/arch/x86/include/uapi/asm/unistd_32.h
index 053122c..2712d5e 100644
--- a/tools/arch/x86/include/uapi/asm/unistd_32.h
+++ b/tools/arch/x86/include/uapi/asm/unistd_32.h
@@ -1,4 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __NR_execve
+#define __NR_execve 11
+#endif
 #ifndef __NR_getppid
 #define __NR_getppid 64
 #endif
diff --git a/tools/arch/x86/include/uapi/asm/unistd_64.h b/tools/arch/x86/include/uapi/asm/unistd_64.h
index 54a6c4d..a6f7fe8 100644
--- a/tools/arch/x86/include/uapi/asm/unistd_64.h
+++ b/tools/arch/x86/include/uapi/asm/unistd_64.h
@@ -1,4 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __NR_execve
+#define __NR_execve 59
+#endif
 #ifndef __NR_getppid
 #define __NR_getppid 110
 #endif
diff --git a/tools/perf/bench/bench.h b/tools/perf/bench/bench.h
index 0c03f12..4588d3a 100644
--- a/tools/perf/bench/bench.h
+++ b/tools/perf/bench/bench.h
@@ -35,6 +35,7 @@ int bench_sched_messaging(int argc, const char **argv);
 int bench_sched_pipe(int argc, const char **argv);
 int bench_syscall_basic(int argc, const char **argv);
 int bench_syscall_getpgid(int argc, const char **argv);
+int bench_syscall_execve(int argc, const char **argv);
 int bench_mem_memcpy(int argc, const char **argv);
 int bench_mem_memset(int argc, const char **argv);
 int bench_mem_find_bit(int argc, const char **argv);
diff --git a/tools/perf/bench/syscall.c b/tools/perf/bench/syscall.c
index 6411b14..fe79f7f 100644
--- a/tools/perf/bench/syscall.c
+++ b/tools/perf/bench/syscall.c
@@ -14,6 +14,7 @@
 #include <sys/time.h>
 #include <sys/syscall.h>
 #include <sys/types.h>
+#include <sys/wait.h>
 #include <unistd.h>
 #include <stdlib.h>
 
@@ -30,6 +31,27 @@ static const char * const bench_syscall_usage[] = {
 	NULL
 };
 
+static void test_execve(void)
+{
+	const char *pathname = "/bin/true";
+	char *const argv[] = { (char *)pathname, NULL };
+	pid_t pid = fork();
+
+	if (pid < 0) {
+		fprintf(stderr, "fork failed\n");
+		exit(1);
+	} else if (pid == 0) {
+		execve(pathname, argv, NULL);
+		fprintf(stderr, "execve /bin/true failed\n");
+		exit(1);
+	} else {
+		if (waitpid(pid, NULL, 0) < 0) {
+			fprintf(stderr, "waitpid failed\n");
+			exit(1);
+		}
+	}
+}
+
 static int bench_syscall_common(int argc, const char **argv, int syscall)
 {
 	struct timeval start, stop, diff;
@@ -49,6 +71,12 @@ static int bench_syscall_common(int argc, const char **argv, int syscall)
 		case __NR_getpgid:
 			getpgid(0);
 			break;
+		case __NR_execve:
+			test_execve();
+			/* Only loop 10000 times to save time */
+			if (i == 10000)
+				loops = 10000;
+			break;
 		default:
 			break;
 		}
@@ -64,6 +92,9 @@ static int bench_syscall_common(int argc, const char **argv, int syscall)
 	case __NR_getpgid:
 		name = "getpgid()";
 		break;
+	case __NR_execve:
+		name = "execve()";
+		break;
 	default:
 		break;
 	}
@@ -111,3 +142,8 @@ int bench_syscall_getpgid(int argc, const char **argv)
 {
 	return bench_syscall_common(argc, argv, __NR_getpgid);
 }
+
+int bench_syscall_execve(int argc, const char **argv)
+{
+	return bench_syscall_common(argc, argv, __NR_execve);
+}
diff --git a/tools/perf/builtin-bench.c b/tools/perf/builtin-bench.c
index c9a02ac..35f9df8 100644
--- a/tools/perf/builtin-bench.c
+++ b/tools/perf/builtin-bench.c
@@ -53,6 +53,7 @@ static struct bench sched_benchmarks[] = {
 static struct bench syscall_benchmarks[] = {
 	{ "basic",	"Benchmark for basic getppid(2) calls",		bench_syscall_basic	},
 	{ "getpgid",	"Benchmark for getpgid(2) calls",		bench_syscall_getpgid	},
+	{ "execve",	"Benchmark for execve(2) calls",		bench_syscall_execve	},
 	{ "all",	"Run all syscall benchmarks",			NULL			},
 	{ NULL,		NULL,						NULL			},
 };
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH v5 0/4] perf: Add more syscalls to benchmark
  2022-11-10  3:50 [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
                   ` (3 preceding siblings ...)
  2022-11-10  3:50 ` [PATCH v5 4/4] perf bench syscall: Add execve " Tiezhu Yang
@ 2022-12-03  9:19 ` Tiezhu Yang
  2023-01-06  0:17   ` Tiezhu Yang
  4 siblings, 1 reply; 10+ messages in thread
From: Tiezhu Yang @ 2022-12-03  9:19 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo
  Cc: Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	linux-kernel, linux-perf-users



On 11/10/2022 11:50 AM, Tiezhu Yang wrote:
> Tested on x86_64, arm64, mips64 and loongarch64.
>
> Tiezhu Yang (4):
>   tools x86: Keep list sorted by number in unistd_{32,64}.h
>   perf bench syscall: Introduce bench_syscall_common()
>   perf bench syscall: Add getpgid syscall benchmark
>   perf bench syscall: Add execve syscall benchmark
>
>  tools/arch/x86/include/uapi/asm/unistd_32.h | 23 ++++++---
>  tools/arch/x86/include/uapi/asm/unistd_64.h | 23 ++++++---
>  tools/perf/bench/bench.h                    |  2 +
>  tools/perf/bench/syscall.c                  | 76 +++++++++++++++++++++++++++--
>  tools/perf/builtin-bench.c                  |  2 +
>  5 files changed, 108 insertions(+), 18 deletions(-)
>

Ping, any more comments?

Thanks,
Tiezhu


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v5 0/4] perf: Add more syscalls to benchmark
  2022-12-03  9:19 ` [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
@ 2023-01-06  0:17   ` Tiezhu Yang
  2023-01-06 21:04     ` Namhyung Kim
  0 siblings, 1 reply; 10+ messages in thread
From: Tiezhu Yang @ 2023-01-06  0:17 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo
  Cc: Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	linux-kernel, linux-perf-users



On 12/03/2022 05:19 PM, Tiezhu Yang wrote:
>
>
> On 11/10/2022 11:50 AM, Tiezhu Yang wrote:
>> Tested on x86_64, arm64, mips64 and loongarch64.
>>
>> Tiezhu Yang (4):
>>   tools x86: Keep list sorted by number in unistd_{32,64}.h
>>   perf bench syscall: Introduce bench_syscall_common()
>>   perf bench syscall: Add getpgid syscall benchmark
>>   perf bench syscall: Add execve syscall benchmark
>>
>>  tools/arch/x86/include/uapi/asm/unistd_32.h | 23 ++++++---
>>  tools/arch/x86/include/uapi/asm/unistd_64.h | 23 ++++++---
>>  tools/perf/bench/bench.h                    |  2 +
>>  tools/perf/bench/syscall.c                  | 76
>> +++++++++++++++++++++++++++--
>>  tools/perf/builtin-bench.c                  |  2 +
>>  5 files changed, 108 insertions(+), 18 deletions(-)
>>
>
> Ping, any more comments?
>
> Thanks,
> Tiezhu

Hi all,

If this patch series has no value and is not acceptable,
or what should I do to update, please let me know.

Thanks,
Tiezhu


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v5 0/4] perf: Add more syscalls to benchmark
  2023-01-06  0:17   ` Tiezhu Yang
@ 2023-01-06 21:04     ` Namhyung Kim
  2023-01-07  7:23       ` Tiezhu Yang
  2023-02-02  1:58       ` Arnaldo Carvalho de Melo
  0 siblings, 2 replies; 10+ messages in thread
From: Namhyung Kim @ 2023-01-06 21:04 UTC (permalink / raw)
  To: Tiezhu Yang
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, linux-kernel,
	linux-perf-users

Hello,

On Thu, Jan 5, 2023 at 5:23 PM Tiezhu Yang <yangtiezhu@loongson.cn> wrote:
>
>
>
> On 12/03/2022 05:19 PM, Tiezhu Yang wrote:
> >
> >
> > On 11/10/2022 11:50 AM, Tiezhu Yang wrote:
> >> Tested on x86_64, arm64, mips64 and loongarch64.
> >>
> >> Tiezhu Yang (4):
> >>   tools x86: Keep list sorted by number in unistd_{32,64}.h
> >>   perf bench syscall: Introduce bench_syscall_common()
> >>   perf bench syscall: Add getpgid syscall benchmark
> >>   perf bench syscall: Add execve syscall benchmark
> >>
> >>  tools/arch/x86/include/uapi/asm/unistd_32.h | 23 ++++++---
> >>  tools/arch/x86/include/uapi/asm/unistd_64.h | 23 ++++++---
> >>  tools/perf/bench/bench.h                    |  2 +
> >>  tools/perf/bench/syscall.c                  | 76
> >> +++++++++++++++++++++++++++--
> >>  tools/perf/builtin-bench.c                  |  2 +
> >>  5 files changed, 108 insertions(+), 18 deletions(-)
> >>
> >
> > Ping, any more comments?
> >
> > Thanks,
> > Tiezhu
>
> Hi all,
>
> If this patch series has no value and is not acceptable,
> or what should I do to update, please let me know.

I'm so sorry about being late a lot.
I don't have any objection to this series.

For the execve bench, I think it's actually fork + execve
then maybe it makes sense to have a fork only bench
to compare the execve part precisely.

But it can be added later, so

Acked-by: Namhyung Kim <namhyung@kernel.org>

Thanks,
Namhyung

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v5 0/4] perf: Add more syscalls to benchmark
  2023-01-06 21:04     ` Namhyung Kim
@ 2023-01-07  7:23       ` Tiezhu Yang
  2023-02-02  1:58       ` Arnaldo Carvalho de Melo
  1 sibling, 0 replies; 10+ messages in thread
From: Tiezhu Yang @ 2023-01-07  7:23 UTC (permalink / raw)
  To: Namhyung Kim
  Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, linux-kernel,
	linux-perf-users



On 01/07/2023 05:04 AM, Namhyung Kim wrote:
> Hello,
>
> On Thu, Jan 5, 2023 at 5:23 PM Tiezhu Yang <yangtiezhu@loongson.cn> wrote:
>>
>>
>>
>> On 12/03/2022 05:19 PM, Tiezhu Yang wrote:
>>>
>>>
>>> On 11/10/2022 11:50 AM, Tiezhu Yang wrote:
>>>> Tested on x86_64, arm64, mips64 and loongarch64.
>>>>
>>>> Tiezhu Yang (4):
>>>>   tools x86: Keep list sorted by number in unistd_{32,64}.h
>>>>   perf bench syscall: Introduce bench_syscall_common()
>>>>   perf bench syscall: Add getpgid syscall benchmark
>>>>   perf bench syscall: Add execve syscall benchmark
>>>>
>>>>  tools/arch/x86/include/uapi/asm/unistd_32.h | 23 ++++++---
>>>>  tools/arch/x86/include/uapi/asm/unistd_64.h | 23 ++++++---
>>>>  tools/perf/bench/bench.h                    |  2 +
>>>>  tools/perf/bench/syscall.c                  | 76
>>>> +++++++++++++++++++++++++++--
>>>>  tools/perf/builtin-bench.c                  |  2 +
>>>>  5 files changed, 108 insertions(+), 18 deletions(-)
>>>>
>>>
>>> Ping, any more comments?
>>>
>>> Thanks,
>>> Tiezhu
>>
>> Hi all,
>>
>> If this patch series has no value and is not acceptable,
>> or what should I do to update, please let me know.
>
> I'm so sorry about being late a lot.
> I don't have any objection to this series.
>
> For the execve bench, I think it's actually fork + execve
> then maybe it makes sense to have a fork only bench
> to compare the execve part precisely.
>
> But it can be added later, so
>
> Acked-by: Namhyung Kim <namhyung@kernel.org>
>
> Thanks,
> Namhyung
>

Hi Namhyung,

Thank you very much. I will submit another single patch
to benchmark fork after this series is applied.

Thanks,
Tiezhu


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v5 0/4] perf: Add more syscalls to benchmark
  2023-01-06 21:04     ` Namhyung Kim
  2023-01-07  7:23       ` Tiezhu Yang
@ 2023-02-02  1:58       ` Arnaldo Carvalho de Melo
  1 sibling, 0 replies; 10+ messages in thread
From: Arnaldo Carvalho de Melo @ 2023-02-02  1:58 UTC (permalink / raw)
  To: Namhyung Kim
  Cc: Tiezhu Yang, Peter Zijlstra, Ingo Molnar, Mark Rutland,
	Alexander Shishkin, Jiri Olsa, linux-kernel, linux-perf-users

Em Fri, Jan 06, 2023 at 01:04:42PM -0800, Namhyung Kim escreveu:
> Hello,
> 
> On Thu, Jan 5, 2023 at 5:23 PM Tiezhu Yang <yangtiezhu@loongson.cn> wrote:
> >
> >
> >
> > On 12/03/2022 05:19 PM, Tiezhu Yang wrote:
> > >
> > >
> > > On 11/10/2022 11:50 AM, Tiezhu Yang wrote:
> > >> Tested on x86_64, arm64, mips64 and loongarch64.
> > >>
> > >> Tiezhu Yang (4):
> > >>   tools x86: Keep list sorted by number in unistd_{32,64}.h
> > >>   perf bench syscall: Introduce bench_syscall_common()
> > >>   perf bench syscall: Add getpgid syscall benchmark
> > >>   perf bench syscall: Add execve syscall benchmark
> > >>
> > >>  tools/arch/x86/include/uapi/asm/unistd_32.h | 23 ++++++---
> > >>  tools/arch/x86/include/uapi/asm/unistd_64.h | 23 ++++++---
> > >>  tools/perf/bench/bench.h                    |  2 +
> > >>  tools/perf/bench/syscall.c                  | 76
> > >> +++++++++++++++++++++++++++--
> > >>  tools/perf/builtin-bench.c                  |  2 +
> > >>  5 files changed, 108 insertions(+), 18 deletions(-)
> > >>
> > >
> > > Ping, any more comments?
> > >
> > > Thanks,
> > > Tiezhu
> >
> > Hi all,
> >
> > If this patch series has no value and is not acceptable,
> > or what should I do to update, please let me know.
> 
> I'm so sorry about being late a lot.
> I don't have any objection to this series.
> 
> For the execve bench, I think it's actually fork + execve
> then maybe it makes sense to have a fork only bench
> to compare the execve part precisely.
> 
> But it can be added later, so
> 
> Acked-by: Namhyung Kim <namhyung@kernel.org>

Applied.

- Arnaldo

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-02-02  1:58 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-10  3:50 [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
2022-11-10  3:50 ` [PATCH v5 1/4] tools x86: Keep list sorted by number in unistd_{32,64}.h Tiezhu Yang
2022-11-10  3:50 ` [PATCH v5 2/4] perf bench syscall: Introduce bench_syscall_common() Tiezhu Yang
2022-11-10  3:50 ` [PATCH v5 3/4] perf bench syscall: Add getpgid syscall benchmark Tiezhu Yang
2022-11-10  3:50 ` [PATCH v5 4/4] perf bench syscall: Add execve " Tiezhu Yang
2022-12-03  9:19 ` [PATCH v5 0/4] perf: Add more syscalls to benchmark Tiezhu Yang
2023-01-06  0:17   ` Tiezhu Yang
2023-01-06 21:04     ` Namhyung Kim
2023-01-07  7:23       ` Tiezhu Yang
2023-02-02  1:58       ` Arnaldo Carvalho de Melo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.