[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <D90B1D7B-8B75-4790-8D09-1106240B2377@fb.com>
Date: Wed, 22 Feb 2023 20:03:41 +0000
From: Mykola Lysenko <mykolal@...a.com>
To: Tiezhu Yang <yangtiezhu@...ngson.cn>
CC: Mykola Lysenko <mykolal@...a.com>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Andrii Nakryiko <andrii@...nel.org>, bpf <bpf@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
Alexei Starovoitov <alexei.starovoitov@...il.com>
Subject: Re: [PATCH bpf-next 3/3] selftests/bpf: Check
__ARCH_WANT_SET_GET_RLIMIT before syscall(__NR_getrlimit)
Hi Tiezhu,
You can run BPF CI tests on your patch before sending it out by following these instructions:
https://docs.kernel.org/bpf/bpf_devel_QA.html#q-how-do-i-run-bpf-ci-on-my-changes-before-sending-them-out-for-review
Thanks,
Mykola
> On Feb 22, 2023, at 10:06 AM, Alexei Starovoitov <alexei.starovoitov@...il.com> wrote:
>
> !-------------------------------------------------------------------|
> This Message Is From an External Sender
>
> |-------------------------------------------------------------------!
>
> On Wed, Feb 22, 2023 at 3:55 AM Tiezhu Yang <yangtiezhu@...ngson.cn> wrote:
>>
>> __NR_getrlimit is defined only if __ARCH_WANT_SET_GET_RLIMIT is defined:
>>
>> #ifdef __ARCH_WANT_SET_GET_RLIMIT
>> /* getrlimit and setrlimit are superseded with prlimit64 */
>> #define __NR_getrlimit 163
>> ...
>> #endif
>>
>> Some archs do not define __ARCH_WANT_SET_GET_RLIMIT, it should check
>> __ARCH_WANT_SET_GET_RLIMIT before syscall(__NR_getrlimit) to fix the
>> following build error:
>>
>> TEST-OBJ [test_progs] user_ringbuf.test.o
>> tools/testing/selftests/bpf/prog_tests/user_ringbuf.c: In function 'kick_kernel_cb':
>> tools/testing/selftests/bpf/prog_tests/user_ringbuf.c:593:17: error: '__NR_getrlimit' undeclared (first use in this function)
>> 593 | syscall(__NR_getrlimit);
>> | ^~~~~~~~~~~~~~
>> tools/testing/selftests/bpf/prog_tests/user_ringbuf.c:593:17: note: each undeclared identifier is reported only once for each function it appears in
>> make: *** [Makefile:573: tools/testing/selftests/bpf/user_ringbuf.test.o] Error 1
>> make: Leaving directory 'tools/testing/selftests/bpf'
>>
>> Signed-off-by: Tiezhu Yang <yangtiezhu@...ngson.cn>
>> ---
>> tools/testing/selftests/bpf/prog_tests/user_ringbuf.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/tools/testing/selftests/bpf/prog_tests/user_ringbuf.c b/tools/testing/selftests/bpf/prog_tests/user_ringbuf.c
>> index 3a13e10..0550307 100644
>> --- a/tools/testing/selftests/bpf/prog_tests/user_ringbuf.c
>> +++ b/tools/testing/selftests/bpf/prog_tests/user_ringbuf.c
>> @@ -590,7 +590,9 @@ static void *kick_kernel_cb(void *arg)
>> /* Kick the kernel, causing it to drain the ring buffer and then wake
>> * up the test thread waiting on epoll.
>> */
>> +#ifdef __ARCH_WANT_SET_GET_RLIMIT
>> syscall(__NR_getrlimit);
>> +#endif
>
> This is clearly breaks user_ringbuf test on x86:
> https://github.com/kernel-patches/bpf/actions/runs/4242660318/jobs/7374845859
>
> Please do not send patches that make selftest compile on your favorite arch.
> Make sure the patches work correctly on other archs too.
Powered by blists - more mailing lists