[Mesa-dev] automake-gallium testing

Andreas Boll andreas.boll.dev at gmail.com
Fri Oct 19 07:06:11 PDT 2012


2012/10/9 Andreas Boll <andreas.boll.dev at gmail.com>:
> 2012/10/8 Matt Turner <mattst88 at gmail.com>:
>> On Mon, Oct 1, 2012 at 8:08 AM, Andreas Boll <andreas.boll.dev at gmail.com> wrote:
>>> 2012/9/21 Matt Turner <mattst88 at gmail.com>:
>>>> On Mon, Sep 17, 2012 at 8:22 AM, Andreas Boll
>>>> <andreas.boll.dev at gmail.com> wrote:
>>>>> Yep, vdpau is also affected.
>>>>>
>>>>> $ LD_LIBRARY_PATH="/home/andreas/mesa-testing/lib/vdpau"
>>>>> VDPAU_DRIVER=r600' vdpauinfo
>>>>> display: :0   screen: 0
>>>>> Failed to open VDPAU backend
>>>>> /home/andreas/mesa-testing/lib/vdpau/libvdpau_r600.so: undefined
>>>>> symbol: xcb_dri2_id
>>>>> Error creating VDPAU device: 1
>>>>
>>>> Thanks. I think this should be fixed now. I feel like I'm starting to
>>>> go blind checking nm output against scanelf -n.
>>>
>>> Hi Matt,
>>>
>>> I've tested your automake-gallium2 branch and found another regression
>>> in the vdpau state tracker.
>>>
>>> I've bisected to this commit:
>>>
>>> 5a20b8689989faa027f7ad29bb23b33a2d81d4b9 is the first bad commit
>>> commit 5a20b8689989faa027f7ad29bb23b33a2d81d4b9
>>> Author: Matt Turner <mattst88 at gmail.com>
>>> Date:   Tue Sep 4 13:13:51 2012 -0700
>>>
>>>     Remove vdpau hack
>>>
>>> Steps to reproduce:
>>>
>>> $ ./autogen.sh --prefix=$HOME/mesa-testing \
>>>         --with-gallium-drivers=r600,swrast \
>>>         --with-dri-drivers= \
>>>         --enable-texture-float \
>>>         --enable-glx-tls \
>>>         --enable-gallium-g3dvl \
>>>         --enable-vdpau \
>>>         --enable-xvmc
>>>
>>> $ make
>>> $ make install
>>>
>>> $ LD_LIBRARY_PATH="/home/andreas/mesa-testing/lib/vdpau"
>>> VDPAU_DRIVER=r600 vdpauinfo
>>> display: :0   screen: 0
>>> /home/andreas/mesa-testing/lib/vdpau/libvdpau_r600.so.1: undefined
>>> symbol: vdp_imp_device_create_x11
>>> Error creating VDPAU device: 1
>>>
>>> Andreas.
>>
>> I think there's intermediate breakage caused by this commit (which I
>> can probably hide by folding into another commit), but can you confirm
>> that you don't have this issue at the end of the series?
>
> I have the issue also with the end of the series.
>
> I've done some further testing with softpipe:
>
> Softpipe without llvm:
>
> Regression: undefined symbol: driver_descriptor
>
> Steps to reproduce:
> $ ./autogen.sh --prefix=$HOME/mesa-testing \
>         --with-gallium-drivers=swrast \
>         --with-dri-drivers= \
>         --enable-texture-float \
>         --enable-glx-tls \
>         --enable-gallium-g3dvl \
>         --enable-vdpau \
>         --enable-xvmc \
>         --disable-gallium-llvm
>
> $ make
> $ make install
>
> $ LD_LIBRARY_PATH="/home/andreas/mesa-testing/lib/vdpau"
> VDPAU_DRIVER=softpipe vdpauinfo
> display: :0   screen: 0
> Failed to open VDPAU backend
> /home/andreas/mesa-testing/lib/vdpau/libvdpau_softpipe.so: undefined
> symbol: driver_descriptor
> Error creating VDPAU device: 1
>
>
> 44127ab281f7b92e555fe2fb1080ae397bf51b20 is the first bad commit
> commit 44127ab281f7b92e555fe2fb1080ae397bf51b20
> Author: Matt Turner <mattst88 at gmail.com>
> Date:   Wed Sep 5 16:52:41 2012 -0700
>
>     targets/vdpau-softpipe: Convert to automake
>
> #####################
>
> Softpipe with llvm: (same regression as r600g with and without llvm)
>
> Regression: undefined symbol: vdp_imp_device_create_x11
>
> Steps to reproduce:
>
> $ ./autogen.sh --prefix=$HOME/mesa-testing \
>         --with-gallium-drivers=swrast \
>         --with-dri-drivers= \
>         --enable-texture-float \
>         --enable-glx-tls \
>         --enable-gallium-g3dvl \
>         --enable-vdpau \
>         --enable-xvmc
>
> $ make
> $ make install
>
> $ LD_LIBRARY_PATH="/home/andreas/mesa-testing/lib/vdpau"
> VDPAU_DRIVER=softpipe vdpauinfo
> display: :0   screen: 0
> /home/andreas/mesa-testing/lib/vdpau/libvdpau_softpipe.so.1: undefined
> symbol: vdp_imp_device_create_x11
> Error creating VDPAU device: 1
>
>
> 5a20b8689989faa027f7ad29bb23b33a2d81d4b9 is the first bad commit
> commit 5a20b8689989faa027f7ad29bb23b33a2d81d4b9
> Author: Matt Turner <mattst88 at gmail.com>
> Date:   Tue Sep 4 13:13:51 2012 -0700
>
>     Remove vdpau hack
>
>
> I hope this helps you.
>
> Andreas.

Hi Matt,

I've tested your automake-gallium3 branch.
The regressions from
http://lists.freedesktop.org/archives/mesa-dev/2012-October/028457.html
aren't solved with this branch.
I've found two regressions compared to your automake-gallium2 branch.

1. Regression in bisecting the branch: fails to compile

Steps to reproduce:

$ ./autogen.sh --prefix=$HOME/mesa-testing \
	--with-gallium-drivers=r600,swrast \
	--with-dri-drivers= \
	--enable-vdpau

$ make
$ make install

introduces the compile error:

commit b2a80eee7c874e1afac773ef1018c364b4a9ea0b
Author: Matt Turner <mattst88 at gmail.com>
Date:   Tue Sep 4 13:13:51 2012 -0700

    state_trackers/vdpau: Convert to automake

################

fixes the compile error for vdpau-softpipe:

commit d65b1480b7a5f74608bad41b9266ded29b7edb27
Author: Matt Turner <mattst88 at gmail.com>
Date:   Wed Sep 5 16:52:41 2012 -0700

    targets/vdpau-softpipe: Convert to automake


fixes the compile error for vdpau-r600:

commit aa088c28e025841364c34d23ad825b125d9f6482
Author: Matt Turner <mattst88 at gmail.com>
Date:   Wed Sep 5 16:12:49 2012 -0700

    targets/vdpau-r600: Convert to automake


Compile errors:

make[3]: Entering directory
`/home/andreas/git/mesa/src/gallium/targets/vdpau-r600'
ccache gcc -c -I../../../../src/gallium/include
-I../../../../src/gallium/drivers -I../../../../src/gallium/auxiliary
-I../../../../src/gallium/winsys -I/usr/local/include
-I/usr/local/include/libdrm   -g -O2 -Wall -std=c99
-Werror=implicit-function-declaration -Werror=missing-prototypes
-fno-strict-aliasing -fno-builtin-memcmp -fPIC -DGALLIUM_TRACE
-DVER_MAJOR=1 -DVER_MINOR=0  -fvisibility=hidden -DGALLIUM_TRACE
-DVER_MAJOR=1 -DVER_MINOR=0
../../../../src/gallium/state_trackers/vdpau/device.c -o
../../../../src/gallium/state_trackers/vdpau/device.o
In file included from
../../../../src/gallium/state_trackers/vdpau/vdpau_private.h:41:0,
                 from ../../../../src/gallium/state_trackers/vdpau/device.c:34:
../../../../src/gallium/auxiliary/os/os_thread.h: In function
‘pipe_thread_create’:
../../../../src/gallium/auxiliary/os/os_thread.h:60:4: error: unknown
type name ‘sigset_t’
../../../../src/gallium/auxiliary/os/os_thread.h:63:4: error: implicit
declaration of function ‘sigfillset’
[-Werror=implicit-function-declaration]
../../../../src/gallium/auxiliary/os/os_thread.h:64:4: error: implicit
declaration of function ‘pthread_sigmask’
[-Werror=implicit-function-declaration]
../../../../src/gallium/auxiliary/os/os_thread.h:64:20: error:
‘SIG_SETMASK’ undeclared (first use in this function)
../../../../src/gallium/auxiliary/os/os_thread.h:64:20: note: each
undeclared identifier is reported only once for each function it
appears in
In file included from
../../../../src/gallium/state_trackers/vdpau/vdpau_private.h:41:0,
                 from ../../../../src/gallium/state_trackers/vdpau/device.c:34:
../../../../src/gallium/auxiliary/os/os_thread.h: At top level:
../../../../src/gallium/auxiliary/os/os_thread.h:320:1: error: unknown
type name ‘pthread_barrier_t’
../../../../src/gallium/auxiliary/os/os_thread.h: In function
‘pipe_barrier_init’:
../../../../src/gallium/auxiliary/os/os_thread.h:324:4: error:
implicit declaration of function ‘pthread_barrier_init’
[-Werror=implicit-function-declaration]
../../../../src/gallium/auxiliary/os/os_thread.h: In function
‘pipe_barrier_destroy’:
../../../../src/gallium/auxiliary/os/os_thread.h:329:4: error:
implicit declaration of function ‘pthread_barrier_destroy’
[-Werror=implicit-function-declaration]
../../../../src/gallium/auxiliary/os/os_thread.h: In function
‘pipe_barrier_wait’:
../../../../src/gallium/auxiliary/os/os_thread.h:334:4: error:
implicit declaration of function ‘pthread_barrier_wait’
[-Werror=implicit-function-declaration]
cc1: some warnings being treated as errors
make[3]: *** [../../../../src/gallium/state_trackers/vdpau/device.o] Fehler 1
make[3]: Leaving directory
`/home/andreas/git/mesa/src/gallium/targets/vdpau-r600'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/home/andreas/git/mesa/src/gallium/targets'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/andreas/git/mesa/src'
make: *** [all-recursive] Fehler 1

################

make[3]: Entering directory
`/home/andreas/git/mesa/src/gallium/targets/vdpau-softpipe'
ccache gcc -c -I../../../../src/gallium/include
-I../../../../src/gallium/drivers -I../../../../src/gallium/auxiliary
-I../../../../src/gallium/winsys  -g -O2 -Wall -std=c99
-Werror=implicit-function-declaration -Werror=missing-prototypes
-fno-strict-aliasing -fno-builtin-memcmp -fPIC -DGALLIUM_TRACE
-DVER_MAJOR=1 -DVER_MINOR=0 -DGALLIUM_SOFTPIPE -fvisibility=hidden
-DGALLIUM_TRACE -DVER_MAJOR=1 -DVER_MINOR=0 -DGALLIUM_SOFTPIPE
../../../../src/gallium/state_trackers/vdpau/device.c -o
../../../../src/gallium/state_trackers/vdpau/device.o
In file included from
../../../../src/gallium/state_trackers/vdpau/vdpau_private.h:41:0,
                 from ../../../../src/gallium/state_trackers/vdpau/device.c:34:
../../../../src/gallium/auxiliary/os/os_thread.h: In function
‘pipe_thread_create’:
../../../../src/gallium/auxiliary/os/os_thread.h:60:4: error: unknown
type name ‘sigset_t’
../../../../src/gallium/auxiliary/os/os_thread.h:63:4: error: implicit
declaration of function ‘sigfillset’
[-Werror=implicit-function-declaration]
../../../../src/gallium/auxiliary/os/os_thread.h:64:4: error: implicit
declaration of function ‘pthread_sigmask’
[-Werror=implicit-function-declaration]
../../../../src/gallium/auxiliary/os/os_thread.h:64:20: error:
‘SIG_SETMASK’ undeclared (first use in this function)
../../../../src/gallium/auxiliary/os/os_thread.h:64:20: note: each
undeclared identifier is reported only once for each function it
appears in
In file included from
../../../../src/gallium/state_trackers/vdpau/vdpau_private.h:41:0,
                 from ../../../../src/gallium/state_trackers/vdpau/device.c:34:
../../../../src/gallium/auxiliary/os/os_thread.h: At top level:
../../../../src/gallium/auxiliary/os/os_thread.h:320:1: error: unknown
type name ‘pthread_barrier_t’
../../../../src/gallium/auxiliary/os/os_thread.h: In function
‘pipe_barrier_init’:
../../../../src/gallium/auxiliary/os/os_thread.h:324:4: error:
implicit declaration of function ‘pthread_barrier_init’
[-Werror=implicit-function-declaration]
../../../../src/gallium/auxiliary/os/os_thread.h: In function
‘pipe_barrier_destroy’:
../../../../src/gallium/auxiliary/os/os_thread.h:329:4: error:
implicit declaration of function ‘pthread_barrier_destroy’
[-Werror=implicit-function-declaration]
../../../../src/gallium/auxiliary/os/os_thread.h: In function
‘pipe_barrier_wait’:
../../../../src/gallium/auxiliary/os/os_thread.h:334:4: error:
implicit declaration of function ‘pthread_barrier_wait’
[-Werror=implicit-function-declaration]
cc1: some warnings being treated as errors
make[3]: *** [../../../../src/gallium/state_trackers/vdpau/device.o] Fehler 1
make[3]: Leaving directory
`/home/andreas/git/mesa/src/gallium/targets/vdpau-softpipe'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/home/andreas/git/mesa/src/gallium/targets'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/andreas/git/mesa/src'
make: *** [all-recursive] Fehler 1

################

2. Regression:

XvMC is also affected:

Steps to reproduce:

$ ./autogen.sh --prefix=$HOME/mesa-testing \
	--with-gallium-drivers=r600,swrast \
	--with-dri-drivers= \
	--enable-xvmc

$ make
$ make install

introduces the compile error:

commit 78f64389718fc0d29373cc11628e3b494bc9cdc2
Author: Matt Turner <mattst88 at gmail.com>
Date:   Tue Sep 4 21:08:19 2012 -0700

    state_trackers/xvmc: Convert to automake


fixes the compile error for xvmc-softpipe:

commit d63d3f45876d26f82ff291db58b481e319a4e920
Author: Matt Turner <mattst88 at gmail.com>
Date:   Fri Sep 7 14:03:27 2012 -0700

    targets/xvmc-softpipe: Convert to automake


fixes the compile error for xvmc-r600:

commit 6c448acf8cf59b913a22b30495c8dabed5424b5c
Author: Matt Turner <mattst88 at gmail.com>
Date:   Fri Sep 7 13:56:04 2012 -0700

    targets/xvmc-r600: Convert to automake


Compile errors:

make[3]: Entering directory
`/home/andreas/git/mesa/src/gallium/targets/xvmc-r600'
ccache gcc -c -I../../../../src/gallium/include
-I../../../../src/gallium/drivers -I../../../../src/gallium/auxiliary
-I../../../../src/gallium/winsys -I/usr/local/include
-I/usr/local/include/libdrm   -g -O2 -Wall -std=c99
-Werror=implicit-function-declaration -Werror=missing-prototypes
-fno-strict-aliasing -fno-builtin-memcmp -fPIC -DGALLIUM_TRACE
-fvisibility=hidden -DGALLIUM_TRACE
../../../../src/gallium/state_trackers/xvmc/context.c -o
../../../../src/gallium/state_trackers/xvmc/context.o
In file included from ../../../../src/gallium/auxiliary/util/u_math.h:54:0,
                 from ../../../../src/gallium/auxiliary/util/u_inlines.h:41,
                 from ../../../../src/gallium/include/pipe/p_video_state.h:35,
                 from ../../../../src/gallium/include/pipe/p_video_decoder.h:35,
                 from ../../../../src/gallium/state_trackers/xvmc/context.c:34:
/usr/include/strings.h:48:30: error: expected declaration specifiers
or ‘...’ before numeric constant
make[3]: *** [../../../../src/gallium/state_trackers/xvmc/context.o] Fehler 1
make[3]: Leaving directory
`/home/andreas/git/mesa/src/gallium/targets/xvmc-r600'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/home/andreas/git/mesa/src/gallium/targets'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/andreas/git/mesa/src'
make: *** [all-recursive] Fehler 1

################

make[3]: Entering directory
`/home/andreas/git/mesa/src/gallium/targets/xvmc-softpipe'
ccache gcc -c -I../../../../src/gallium/include
-I../../../../src/gallium/drivers -I../../../../src/gallium/auxiliary
-I../../../../src/gallium/winsys  -g -O2 -Wall -std=c99
-Werror=implicit-function-declaration -Werror=missing-prototypes
-fno-strict-aliasing -fno-builtin-memcmp -fPIC -DGALLIUM_TRACE
-DGALLIUM_SOFTPIPE -fvisibility=hidden -DGALLIUM_TRACE
-DGALLIUM_SOFTPIPE
../../../../src/gallium/state_trackers/xvmc/context.c -o
../../../../src/gallium/state_trackers/xvmc/context.o
In file included from ../../../../src/gallium/auxiliary/util/u_math.h:54:0,
                 from ../../../../src/gallium/auxiliary/util/u_inlines.h:41,
                 from ../../../../src/gallium/include/pipe/p_video_state.h:35,
                 from ../../../../src/gallium/include/pipe/p_video_decoder.h:35,
                 from ../../../../src/gallium/state_trackers/xvmc/context.c:34:
/usr/include/strings.h:48:30: error: expected declaration specifiers
or ‘...’ before numeric constant
make[3]: *** [../../../../src/gallium/state_trackers/xvmc/context.o] Fehler 1
make[3]: Leaving directory
`/home/andreas/git/mesa/src/gallium/targets/xvmc-softpipe'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/home/andreas/git/mesa/src/gallium/targets'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/andreas/git/mesa/src'
make: *** [all-recursive] Fehler 1


Andreas.


More information about the mesa-dev mailing list