[PATCH libdrm] amdgpu/basic_tests.c: check for fork

Fabrice Fontaine fontaine.fabrice at gmail.com
Mon Mar 11 17:17:15 UTC 2019


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)? 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.leichtzumerken at 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.fabrice at 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)
>


More information about the dri-devel mailing list