hi,
The test error is caused by g_vsyscall set failed.
Error output:
selftests: proc: proc-pid-vm
proc-pid-vm: proc-pid-vm.c:389: main: Assertion `rv == len' failed.
Aborted
g_vsyscall is set to 0.
In proc-pid-vm.c:
/*
* 0: vsyscall VMA doesn't exist vsyscall=none
* 1: vsyscall VMA is r-xp vsyscall=emulate
* 2: vsyscall VMA is --xp vsyscall=xonly
*/
static int g_vsyscall;
static const char *str_vsyscall;
static const char str_vsyscall_0[] = "";
static const char str_vsyscall_1[] =
"ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]\n";
static const char str_vsyscall_2[] =
"ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]\n";
The /proc/%u/maps output is:
buf=100000000-100001000 r-xp 00000000 00:2d 2 /tmp/#2 (deleted)
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
So the g_vsyscall should be 2 according to commentary(2: vsyscall VMA is --xp).
Is it a bug?
best regards,
On Fri, Sep 09, 2022 at 10:19:16AM +0800, Jie2x Zhou wrote:
> hi,
>
> The test error is caused by g_vsyscall set failed.
> Error output:
> selftests: proc: proc-pid-vm
> proc-pid-vm: proc-pid-vm.c:389: main: Assertion `rv == len' failed.
> Aborted
>
> g_vsyscall is set to 0.
> In proc-pid-vm.c:
> /*
> * 0: vsyscall VMA doesn't exist vsyscall=none
> * 1: vsyscall VMA is r-xp vsyscall=emulate
> * 2: vsyscall VMA is --xp vsyscall=xonly
> */
> static int g_vsyscall;
> static const char *str_vsyscall;
>
> static const char str_vsyscall_0[] = "";
> static const char str_vsyscall_1[] =
> "ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]\n";
> static const char str_vsyscall_2[] =
> "ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]\n";
>
> The /proc/%u/maps output is:
> buf=100000000-100001000 r-xp 00000000 00:2d 2 /tmp/#2 (deleted)
> ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
>
> So the g_vsyscall should be 2 according to commentary(2: vsyscall VMA is --xp).
> Is it a bug?
Can't reproduce. Please, post "strace -f ./proc-pid-vm".
hi,
>Can't reproduce. Please, post "strace -f ./proc-pid-vm".
test in "Debian GNU/Linux bookworm/sid"
And the strace output is attached.
best regards,
________________________________________
From: Alexey Dobriyan <[email protected]>
Sent: Friday, September 9, 2022 1:20 PM
To: Zhou, Jie2X
Cc: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; Li, Philip
Subject: Re: make run_tests -C proc: proc-pid-vm assertion failed.
On Fri, Sep 09, 2022 at 10:19:16AM +0800, Jie2x Zhou wrote:
> hi,
>
> The test error is caused by g_vsyscall set failed.
> Error output:
> selftests: proc: proc-pid-vm
> proc-pid-vm: proc-pid-vm.c:389: main: Assertion `rv == len' failed.
> Aborted
>
> g_vsyscall is set to 0.
> In proc-pid-vm.c:
> /*
> * 0: vsyscall VMA doesn't exist vsyscall=none
> * 1: vsyscall VMA is r-xp vsyscall=emulate
> * 2: vsyscall VMA is --xp vsyscall=xonly
> */
> static int g_vsyscall;
> static const char *str_vsyscall;
>
> static const char str_vsyscall_0[] = "";
> static const char str_vsyscall_1[] =
> "ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]\n";
> static const char str_vsyscall_2[] =
> "ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]\n";
>
> The /proc/%u/maps output is:
> buf=100000000-100001000 r-xp 00000000 00:2d 2 /tmp/#2 (deleted)
> ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
>
> So the g_vsyscall should be 2 according to commentary(2: vsyscall VMA is --xp).
> Is it a bug?
Can't reproduce. Please, post "strace -f ./proc-pid-vm".