Re: [PATCH 3/6] selftests/clone3: use uint64_t for flags parameter

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/10/19 6:03 AM, Eugene Syromiatnikov wrote:
Flags parameter in both userspace and kernel clone args is 64-bit wide,
there's little reason to have it signed and 32-bit in tests.


So what are doing? You are stating the problem here, how are you
fixing it?

* tools/testing/selftests/clone3/clone3.c: Include <inttypes.h> and
<stdint.h>.
(call_clone3): Change flags parameter type from int to uint64_t.
(test_clone3): Change flags parameter type from int to uint64_t; change
the format string that prints it accordingly.


I am not going to say this again. Please don't include pseudo code in
the commit log.

Signed-off-by: Eugene Syromiatnikov <esyr@xxxxxxxxxx>
---
  tools/testing/selftests/clone3/clone3.c | 9 ++++++---
  1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/tools/testing/selftests/clone3/clone3.c b/tools/testing/selftests/clone3/clone3.c
index 4f23a0c..1746a9b 100644
--- a/tools/testing/selftests/clone3/clone3.c
+++ b/tools/testing/selftests/clone3/clone3.c
@@ -4,8 +4,10 @@
#define _GNU_SOURCE
  #include <errno.h>
+#include <inttypes.h>
  #include <linux/types.h>
  #include <linux/sched.h>
+#include <stdint.h>
  #include <stdio.h>
  #include <stdlib.h>
  #include <sys/syscall.h>
@@ -36,7 +38,7 @@ static pid_t raw_clone(struct clone_args *args, size_t size)
  	return syscall(__NR_clone3, args, size);
  }
-static int call_clone3(int flags, size_t size, enum test_mode test_mode)
+static int call_clone3(uint64_t flags, size_t size, enum test_mode test_mode)
  {
  	struct clone_args args = {0};
  	pid_t ppid = -1;
@@ -102,12 +104,13 @@ static int call_clone3(int flags, size_t size, enum test_mode test_mode)
  	return 0;
  }
-static int test_clone3(int flags, size_t size, int expected,
+static int test_clone3(uint64_t flags, size_t size, int expected,
  		       enum test_mode test_mode)
  {
  	int ret;
- ksft_print_msg("[%d] Trying clone3() with flags 0x%x (size %d)\n",
+	ksft_print_msg("[%d] Trying clone3() with flags %#" PRIx64 " (size %d)"
+			"\n",
  			getpid(), flags, size);
  	ret = call_clone3(flags, size, test_mode);
  	ksft_print_msg("[%d] clone3() with flags says :%d expected %d\n",


thanks,
-- Shuah



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux