mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-03 10:05:29 +00:00
Support for amd64, x86 - 64 and 32 bit, arm64, ppc64, ppc64le, s390x, mips64. This should work identically on all arches, tested on x86 32bit and 64bit one, but enabled on all. Refactor the code to be reusable between old/new syscalls. Resolve TODO items in the code. Add the testcase for the preadv2/pwritev2 and also add the (similar) testcase for the older preadv/pwritev syscalls. Trying to test handling an uninitialized flag argument for the v2 syscalls does not work because the flag always comes out as defined zero. Turns out glibc does this deliberately on 64bit architectures because the kernel does actually have a low_offset and high_offset argument, but ignores the high_offset/assumes it is zero. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=601cc11d054ae4b5e9b5babec3d8e4667a2cb9b5 https://bugs.kde.org/408414
57 lines
2.0 KiB
Plaintext
57 lines
2.0 KiB
Plaintext
Syscall param pwritev2(vector) points to unaddressable byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:53)
|
|
Address 0x........ is not stack'd, malloc'd or (recently) free'd
|
|
|
|
Syscall param pwritev2(vector) points to unaddressable byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:54)
|
|
Address 0x........ is not stack'd, malloc'd or (recently) free'd
|
|
|
|
Syscall param pwritev2(vector) points to uninitialised byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:55)
|
|
Address 0x........ is 0 bytes inside a block of size 16 alloc'd
|
|
at 0x........: malloc (vg_replace_malloc.c:...)
|
|
by 0x........: main (sys-preadv2_pwritev2.c:48)
|
|
|
|
Syscall param pwritev2(count) contains uninitialised byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:57)
|
|
|
|
Syscall param pwritev2(flags) contains uninitialised byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:60)
|
|
|
|
Syscall param preadv2(vector) points to unaddressable byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:62)
|
|
Address 0x........ is not stack'd, malloc'd or (recently) free'd
|
|
|
|
Syscall param preadv2(vector) points to unaddressable byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:63)
|
|
Address 0x........ is not stack'd, malloc'd or (recently) free'd
|
|
|
|
Syscall param preadv2(vector) points to uninitialised byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:64)
|
|
Address 0x........ is 0 bytes inside a block of size 16 alloc'd
|
|
at 0x........: malloc (vg_replace_malloc.c:...)
|
|
by 0x........: main (sys-preadv2_pwritev2.c:48)
|
|
|
|
Syscall param preadv2(count) contains uninitialised byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:66)
|
|
|
|
Syscall param pwritev2(vector[1]) points to unaddressable byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:71)
|
|
Address 0x........ is not stack'd, malloc'd or (recently) free'd
|
|
|
|
Syscall param preadv2(vector[1]) points to unaddressable byte(s)
|
|
...
|
|
by 0x........: main (sys-preadv2_pwritev2.c:72)
|
|
Address 0x........ is not stack'd, malloc'd or (recently) free'd
|
|
|