lapi/syscalls: Add syscall numbers for pwritev2()
PATCH v2 1/3 lapi/syscalls: Add syscall numbers for pwritev2()
Signed-off-by Jinhui huang <[email protected]>
--- include/lapi/syscalls/aarch64.in | 1 + include/lapi/syscalls/arm.in | 1 + include/lapi/syscalls/hppa.in | 1 + include/lapi/syscalls/i386.in | 1 + include/lapi/syscalls/ia64.in | 1 + include/lapi/syscalls/powerpc.in | 1 + include/lapi/syscalls/powerpc64.in | 1 + include/lapi/syscalls/s390.in | 1 + include/lapi/syscalls/s390x.in | 1 + include/lapi/syscalls/sh.in | 1 + include/lapi/syscalls/sparc.in | 1 + include/lapi/syscalls/sparc64.in | 1 + include/lapi/syscalls/x86_64.in | 1 + 13 files changed, 13 insertions(+)
include/lapi/syscalls/aarch64.in +1 -0
@@ -263,4 +263,5 @@ execveat 281 mlock2 284 copy_file_range 285 preadv2 286 +pwritev2 287 _sysctl 1078
include/lapi/syscalls/arm.in +1 -0
@@ -347,4 +347,5 @@ membarrier (__NR_SYSCALL_BASE+389) mlock2 (__NR_SYSCALL_BASE+390) copy_file_range (__NR_SYSCALL_BASE+391) preadv2 (__NR_SYSCALL_BASE+392) +pwritev2 (__NR_SYSCALL_BASE+393) statx (__NR_SYSCALL_BASE+397)
include/lapi/syscalls/hppa.in +1 -0
@@ -24,3 +24,4 @@ execveat 342 mlock2 345 copy_file_range 346 preadv2 347 +pwritev2 348
include/lapi/syscalls/i386.in +1 -0
@@ -345,4 +345,5 @@ membarrier 375 mlock2 376 copy_file_range 377 preadv2 378 +pwritev2 379 statx 383
include/lapi/syscalls/ia64.in +1 -0
@@ -303,3 +303,4 @@ execveat 1342 mlock2 1346 copy_file_range 1347 preadv2 1348 +pwritev2 1349
include/lapi/syscalls/powerpc.in +1 -0
@@ -352,4 +352,5 @@ execveat 362 mlock2 378 copy_file_range 379 preadv2 380 +pwritev2 381 statx 383
include/lapi/syscalls/powerpc64.in +1 -0
@@ -352,4 +352,5 @@ execveat 362 mlock2 378 copy_file_range 379 preadv2 380 +pwritev2 381 statx 383
include/lapi/syscalls/s390.in +1 -0
@@ -336,3 +336,4 @@ execveat 354 mlock2 374 copy_file_range 375 preadv2 376 +pwritev2 377
include/lapi/syscalls/s390x.in +1 -0
@@ -335,3 +335,4 @@ execveat 354 mlock2 374 copy_file_range 375 preadv2 376 +pwritev2 377
include/lapi/syscalls/sh.in +1 -0
@@ -368,3 +368,4 @@ execveat 387 mlock2 390 copy_file_range 391 preadv2 392 +pwritev2 393
include/lapi/syscalls/sparc.in +1 -0
@@ -341,3 +341,4 @@ execveat 350 mlock2 356 copy_file_range 357 preadv2 358 +pwritev2 359
include/lapi/syscalls/sparc64.in +1 -0
@@ -317,3 +317,4 @@ execveat 350 mlock2 356 copy_file_range 357 preadv2 358 +pwritev2 359
include/lapi/syscalls/x86_64.in +1 -0
@@ -312,4 +312,5 @@ membarrier 324 mlock2 325 copy_file_range 326 preadv2 327 +pwritev2 359 statx 332
Signature · 1 line
1.8.3.1
PATCH v2 2/3 syscalls/pwritev201: Add new testcase
Check the basic functionality of the pwritev2().
Signed-off-by Jinhui huang <[email protected]>
--- configure.ac | 1 + include/lapi/pwritev2.h | 26 ++++++ m4/ltp-pwritev2.m4 | 9 ++ runtest/syscalls | 3 + testcases/kernel/syscalls/pwritev2/.gitignore | 2 + testcases/kernel/syscalls/pwritev2/Makefile | 13 +++ testcases/kernel/syscalls/pwritev2/pwritev201.c | 119 ++++++++++++++++++++++++ 7 files changed, 173 insertions(+) create mode 100644 include/lapi/pwritev2.h create mode 100644 m4/ltp-pwritev2.m4 create mode 100644 testcases/kernel/syscalls/pwritev2/.gitignore create mode 100644 testcases/kernel/syscalls/pwritev2/Makefile create mode 100644 testcases/kernel/syscalls/pwritev2/pwritev201.c
configure.ac +1 -0
@@ -219,6 +219,7 @@ LTP_CHECK_KCMP_TYPE LTP_CHECK_PREADV LTP_CHECK_PWRITEV LTP_CHECK_PREADV2 +LTP_CHECK_PWRITEV2 LTP_CHECK_EPOLL_PWAIT LTP_CHECK_KEYUTILS_SUPPORT LTP_CHECK_SYNC_ADD_AND_FETCH
include/lapi/pwritev2.h new file +26 -0
@@ -0,0 +1,26 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/* +* Copyright (c) 2019 FUJITSU LIMITED. All rights reserved. +* Author: Jinhui Huang <[email protected]> +*/ + +#ifndef PWRITEV2_H +#define PWRITEV2_H + +#include "config.h" +#include "lapi/syscalls.h" + +#if !defined(HAVE_PWRITEV2 ) + +/* LO_HI_LONG taken from glibc */ +# define LO_HI_LONG (val) (long) (val), (long) (((uint64_t) (val)) >> 32) + +ssize_t pwritev2 (int fd,const struct iovec *iov,int iovcnt,off_t offset, +int flags) +{ +return tst_syscall (__NR_pwritev2, fd, iov, iovcnt, +LO_HI_LONG (offset), flags); +} +#endif + +#endif /* PWRITEV2_H */
m4/ltp-pwritev2.m4 new file +9 -0
@@ -0,0 +1,9 @@ +dnl SPDX-License-Identifier: GPL-2.0-or-later +dnl Copyright (c) 2019 FUJITSU LIMITED. All rights reserved. +dnl Author: Jinhui Huang <[email protected]> + +dnl LTP_CHECK_PWRITEV2 +dnl ---------------------------- +AC_DEFUN([LTP_CHECK_PWRITEV2],[ +AC_CHECK_FUNCS(pwritev2,,) +])
runtest/syscalls +3 -0
@@ -912,6 +912,9 @@ pwritev02_64 pwritev02_64 pwritev03 pwritev03 pwritev03_64 pwritev03_64 +pwritev201 pwritev201 +pwritev201_64 pwritev201_64 + quotactl01 quotactl01 quotactl02 quotactl02 quotactl03 quotactl03
testcases/kernel/syscalls/pwritev2/.gitignore new file +2 -0
@@ -0,0 +1,2 @@ +/pwritev201 +/pwritev201_64
testcases/kernel/syscalls/pwritev2/Makefile new file +13 -0
@@ -0,0 +1,13 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# Copyright (c) 2019 FUJITSU LIMITED. All rights reserved. +# Author: Jinhui Huang <[email protected]> + +top_srcdir ?= ../../../.. + +include $(top_srcdir)/include/mk/testcases.mk + +include $(abs_srcdir)/../utils/newer_64.mk + +%_64: CPPFLAGS += -D_FILE_OFFSET_BITS=64 + +include $(top_srcdir)/include/mk/generic_leaf_target.mk
testcases/kernel/syscalls/pwritev2/pwritev201.c new file +119 -0
119 lines not on this page · raw message
Signature · 1 line
1.8.3.1
PATCH v2 3/3 syscalls/pwitev202: Add new testcase
In reply to Jinhui huangCheck various errnos for the pwitev2().
Signed-off-by Jinhui huang <[email protected]>
--- runtest/syscalls | 2 + testcases/kernel/syscalls/pwritev2/.gitignore | 2 + testcases/kernel/syscalls/pwritev2/pwritev202.c | 117 ++++++++++++++++++++++++ 3 files changed, 121 insertions(+) create mode 100644 testcases/kernel/syscalls/pwritev2/pwritev202.c
runtest/syscalls +2 -0
@@ -914,6 +914,8 @@ pwritev03_64 pwritev03_64 pwritev201 pwritev201 pwritev201_64 pwritev201_64 +pwritev202 pwritev202 +pwritev202_64 pwritev202_64 quotactl01 quotactl01 quotactl02 quotactl02
testcases/kernel/syscalls/pwritev2/.gitignore +2 -0
@@ -1,2 +1,4 @@ /pwritev201 /pwritev201_64 +/pwritev202 +/pwritev202_64
testcases/kernel/syscalls/pwritev2/pwritev202.c new file +117 -0
117 lines not on this page · raw message
Signature · 1 line
1.8.3.1
PATCH v2 1/3 lapi/syscalls: Add syscall numbers for pwritev2()
In reply to Jinhui huangHi Jinhui,
Thanks for your patchset, pushed with minor fixes:
1) Fix wrong syscall number for x86_64
2) Fix typos(i.e. pwritev->pwritev2, pwitev2->pwritev2)
Best Regards,
Xiao Yang
Quoted 140 lines · Jinhui huang
Signed-off-by Jinhui huang <[email protected]>--- include/lapi/syscalls/aarch64.in | 1 + include/lapi/syscalls/arm.in | 1 + include/lapi/syscalls/hppa.in | 1 + include/lapi/syscalls/i386.in | 1 + include/lapi/syscalls/ia64.in | 1 + include/lapi/syscalls/powerpc.in | 1 + include/lapi/syscalls/powerpc64.in | 1 + include/lapi/syscalls/s390.in | 1 + include/lapi/syscalls/s390x.in | 1 + include/lapi/syscalls/sh.in | 1 + include/lapi/syscalls/sparc.in | 1 + include/lapi/syscalls/sparc64.in | 1 + include/lapi/syscalls/x86_64.in | 1 + 13 files changed, 13 insertions(+)include/lapi/syscalls/aarch64.in +1
-0@@ -263,4 +263,5 @@ execveat 281 mlock2 284 copy_file_range 285 preadv2 286 +pwritev2 287 _sysctl 1078include/lapi/syscalls/arm.in +1
-0@@ -347,4 +347,5 @@ membarrier (__NR_SYSCALL_BASE+389) mlock2 (__NR_SYSCALL_BASE+390) copy_file_range (__NR_SYSCALL_BASE+391) preadv2 (__NR_SYSCALL_BASE+392) +pwritev2 (__NR_SYSCALL_BASE+393) statx (__NR_SYSCALL_BASE+397)include/lapi/syscalls/hppa.in +1
-0@@ -24,3 +24,4 @@ execveat 342 mlock2 345 copy_file_range 346 preadv2 347 +pwritev2 348include/lapi/syscalls/i386.in +1
-0@@ -345,4 +345,5 @@ membarrier 375 mlock2 376 copy_file_range 377 preadv2 378 +pwritev2 379 statx 383include/lapi/syscalls/ia64.in +1
-0@@ -303,3 +303,4 @@ execveat 1342 mlock2 1346 copy_file_range 1347 preadv2 1348 +pwritev2 1349include/lapi/syscalls/powerpc.in +1
-0@@ -352,4 +352,5 @@ execveat 362 mlock2 378 copy_file_range 379 preadv2 380 +pwritev2 381 statx 383include/lapi/syscalls/powerpc64.in +1
-0@@ -352,4 +352,5 @@ execveat 362 mlock2 378 copy_file_range 379 preadv2 380 +pwritev2 381 statx 383include/lapi/syscalls/s390.in +1
-0@@ -336,3 +336,4 @@ execveat 354 mlock2 374 copy_file_range 375 preadv2 376 +pwritev2 377include/lapi/syscalls/s390x.in +1
-0@@ -335,3 +335,4 @@ execveat 354 mlock2 374 copy_file_range 375 preadv2 376 +pwritev2 377include/lapi/syscalls/sh.in +1
-0@@ -368,3 +368,4 @@ execveat 387 mlock2 390 copy_file_range 391 preadv2 392 +pwritev2 393include/lapi/syscalls/sparc.in +1
-0@@ -341,3 +341,4 @@ execveat 350 mlock2 356 copy_file_range 357 preadv2 358 +pwritev2 359include/lapi/syscalls/sparc64.in +1
-0@@ -317,3 +317,4 @@ execveat 350 mlock2 356 copy_file_range 357 preadv2 358 +pwritev2 359include/lapi/syscalls/x86_64.in +1
-0@@ -312,4 +312,5 @@ membarrier 324 mlock2 325 copy_file_range 326 preadv2 327 +pwritev2 359 statx 332