Am 11.03.19 um 18:17 schrieb Fabrice Fontaine: > OK, then will you accept a patch that disable amdgpu test if fork is > not available or a patch that disable all tests (for example through a > --disable-test-programs option)?
No, we really need to test the correct behavior of fork() with userptrs. So how do we spawn a child process with uclibc-ng? I mean it is one of the most fundamental Unix functions, isn't it? Christian. > Currently, the user can only disable > the cairo tests so the whole libdrm package fails to statically build > with uclibc-ng on ARM cortex M4 > (http://autobuild.buildroot.org/?reason=libdrm-2.4.97). > > Best Regards, > > Fabrice > > Le lun. 11 mars 2019 à 17:40, Christian König > <ckoenig.leichtzumer...@gmail.com> a écrit : >> Well NAK, cause that obviously would break the test if fork() isn't >> available. >> >> We certainly don't have any platform where we support amdgpu and fork() >> is not available, so that change is rather pointless in the first place. >> >> Christian. >> >> Am 10.03.19 um 10:44 schrieb Fabrice Fontaine: >>> amdgpu test program use fork since >>> https://cgit.freedesktop.org/mesa/drm/commit/tests/amdgpu/basic_tests.c?id=736ef0b61cab55378202c5f49d91799cc2b99091 >>> >>> However, this function is not always available so add a check for it in >>> configure.ac and use it in tests/amdgpu/basic_tests.c >>> >>> Fixes: >>> - >>> http://autobuild.buildroot.org/results/8d6194982c1080e173fcef8212fb06e6dc275d58 >>> >>> Signed-off-by: Fabrice Fontaine <fontaine.fabr...@gmail.com> >>> --- >>> configure.ac | 2 ++ >>> tests/amdgpu/basic_tests.c | 4 ++++ >>> 2 files changed, 6 insertions(+) >>> >>> diff --git a/configure.ac b/configure.ac >>> index d72e84ad..6effb9a2 100644 >>> --- a/configure.ac >>> +++ b/configure.ac >>> @@ -193,6 +193,8 @@ AC_CHECK_FUNCS([open_memstream], >>> [AC_DEFINE([HAVE_OPEN_MEMSTREAM], 1, [Have >>> open_memstream()])], >>> [AC_DEFINE([HAVE_OPEN_MEMSTREAM], 0)]) >>> >>> +AC_CHECK_FUNCS([fork]) >>> + >>> dnl Use lots of warning flags with with gcc and compatible compilers >>> >>> dnl Note: if you change the following variable, the cache is >>> automatically >>> diff --git a/tests/amdgpu/basic_tests.c b/tests/amdgpu/basic_tests.c >>> index dbae4d53..c32a1351 100644 >>> --- a/tests/amdgpu/basic_tests.c >>> +++ b/tests/amdgpu/basic_tests.c >>> @@ -1646,10 +1646,12 @@ static void amdgpu_userptr_test(void) >>> while (j++ < sdma_write_length) >>> pm4[i++] = 0xdeadbeaf; >>> >>> +#ifdef HAVE_FORK >>> if (!fork()) { >>> pm4[0] = 0x0; >>> exit(0); >>> } >>> +#endif >>> >>> amdgpu_test_exec_cs_helper(context_handle, >>> AMDGPU_HW_IP_DMA, 0, >>> @@ -1675,7 +1677,9 @@ static void amdgpu_userptr_test(void) >>> r = amdgpu_cs_ctx_free(context_handle); >>> CU_ASSERT_EQUAL(r, 0); >>> >>> +#ifdef HAVE_FORK >>> wait(NULL); >>> +#endif >>> } >>> >>> static void amdgpu_sync_dependency_test(void) _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel