[Pixman] [PATCH 0/3] ARM: fixes and workarounds for using pixman with QEMU

Andrea Canciani ranma42 at gmail.com
Tue Jan 11 10:13:43 PST 2011


On Tue, Jan 11, 2011 at 5:10 PM, Siarhei Siamashka
<siarhei.siamashka at gmail.com> wrote:
> From: Siarhei Siamashka <siarhei.siamashka at nokia.com>
>
> The intention of this patchset is to make it easier to test changes
> to pixman code for the possible ARM related regressions without the
> need to run it on real ARM hardware.
>
> When having ARM crosscompiler (for example CodeSourcery provides one) and
> qemu-user with binfmt-misc configured, testing pixman ARM build just becomes
> a simple matter of running something like this:
>
> $ ./configure --host=arm-none-linux-gnueabi --enable-static-testprogs
> --disable-openmp
> $ make check
>
> Older QEMU versions have incomplete ARM NEON support, so additionally
> using '--disable-arm-neon' configure option may be required to pass the
> tests. Also because of limited and buggy threads support in userspace qemu,
> pixman has to be configured with '--disable-openmp' option.
>
> The workaraund for the /proc/self/auxv qemu issue may be not the very
> best solution. Probably alternatives could try '/proc/cpuinfo' text
> parsing or something else. Comments, especially for this part, are welcome.

Patch 3/3 looks like an hack... is it possible to avoid parsing auxv
if its content is not correct/meaningful?

Otherwise I'd rather attempt a clean and correct implementation of
cpu features detection using SIGILL.

I'm going through the documentation you linked in
http://lists.freedesktop.org/archives/pixman/2010-December/000786.html
and I think that the portability issue can be fixed.

Would SIGILL be considered a viable alternative if it was done in a
thread-safe way? How much portability do we want to provide?
In particular, should we only assume C90 or can we assume that
sigsetjmp/siglongjmp are available (they are part of POSIX.1-1988).

>
> Also running the same kind of test with big endian MIPS crosscompiler
> provides an easy way of testing for big endian related problems and
> regressions without having access to big endian hardware.
>
>
> Siarhei Siamashka (3):
>  A new configure option --enable-static-testprogs
>  ARM: do /proc/self/auxv based cpu features detection only in linux
>  ARM: qemu related workarounds in cpu features detection code
>
>  configure.ac        |   14 +++++++++
>  pixman/pixman-cpu.c |   76
> +++++++++++++++++++++++++++++++++++++++++---------
>  test/Makefile.am    |   21 ++++++++++++++
>  3 files changed, 97 insertions(+), 14 deletions(-)
>
> --
> 1.7.2.2
>
> _______________________________________________
> Pixman mailing list
> Pixman at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/pixman
>


More information about the Pixman mailing list