WebGL on Ubuntu shows artifacts

344 views
Skip to first unread message

Kumadasu

unread,
Oct 25, 2012, 7:41:51 AM10/25/12
to panda...@googlegroups.com
Hi, all

I want to run WebGL application on
Ubuntu 12.04 on pandaboard ES Rev B1.

It move smooth but there are some artifacts.

* Environment
Image: http://cdimage.ubuntu.com/releases/12.04/release/ubuntu-12.04-preinstalled-desktop-armhf+omap4.img.gz
Install TI OMAP Release PPA Update October 2012,
Install chromium-browser

$ chromium-browser --use-gl=egl
Go to the page
http://mrdoob.github.com/three.js/examples/webgl_materials_cubemap_balls_reflection.html

* Problem
Sometimes a ball 'A' which located behind another ball 'B'
shows up in front of 'B'.

I tried to use graphic driver via Jockey,
not add TI OMAP PPA,
but there are strange balls too.

Any ideas what I'm missing?

Cheers,
Kumadasu

Nicolas Dechesne

unread,
Oct 25, 2012, 2:32:17 PM10/25/12
to panda...@googlegroups.com
the chrome browser is the ubuntu archives is fairly old, and that's
more or less the problem. we did a build from upstream trunk recently
(v22) and WebGL is working much better, even performance wise. the
problems we were chasing with v20 + SGX really went away with v22
without any change in the GFX driver...

i can't tell for sure that all your problems would be fixed though...
but doing webgl on old chrome is pretty much a bad idea...

v22 was pushed in 12.10 recently, so you can try a 12.10 image with
the jokey driver first. and btw I would be interested by your
conclusion...

then if you need 12.04, you can attempt a rebuild of v22 into 12.04. I
have spent a little bit of time on that and wasn't too much
successful... and building chrome browser is not something you really
want to do too often ;-)

>
> Cheers,
> Kumadasu

Kumadasu

unread,
Oct 28, 2012, 4:52:07 AM10/28/12
to panda...@googlegroups.com
I forgot to report about WebGL on Ubuntu 12.10.
Display goes blackout after opening the WebGL page.
Ctrl+Alt+F1 and Ctrl+Alt+F7 enable display but go to login window.

I tried to rebuild chromium 22 for panda precise.
It failed, probably my instruction is wrong or
cannot rebuild without some modification.

The instruction and error log is below.
Do you have any suggestion?

BTW should I ask this kind of question to Ubuntu Mailing list ?


* Instruction
Download .orig.tar.gz, .diff.gz, .dsc from here.
https://launchpad.net/ubuntu/+source/chromium-browser/22.0.1229.94~r161065-0ubuntu1

$ dpkg-source -x chromium-browser_22.0.1229.94~r161065-0ubuntu1.dsc
$ pbuilder-dist precise armhf create
$ pbuilder-dist precise armhf build
chromium-browser_22.0.1229.94~r161065-0ubuntu1.dsc

* log
$ tail -n20 pbuilder/precise-armhf_result/last_operation.log
AR(target) out/Release/obj.target/third_party/libvpx/libvpx_asm_offsets.a
LINK(host) out/Release/libvpx_obj_int_extract
AR(target) out/Release/obj.target/remoting/libremoting_jingle_glue.a
AR(target) out/Release/obj.target/jingle/libjingle_glue.a
AR(target) out/Release/obj.target/third_party/libjingle/libjingle.a
AR(target) out/Release/obj.target/third_party/jsoncpp/libjsoncpp.a
/usr/bin/ld.gold.real: fatal error:
out/Release/libvpx_obj_int_extract: Invalid argument
collect2: ld returned 1 exit status
make[1]: *** [out/Release/libvpx_obj_int_extract] Error 1
make[1]: *** Waiting for unfinished jobs....
AR(target) out/Release/obj.target/third_party/libjingle/libjingle_p2p.a
make[1]: Leaving directory
`/tmp/buildd/chromium-browser-22.0.1229.94~r161065/build-tree/src'
make: *** [debian/stamp-makefile-build] Error 1
dpkg-buildpackage: error: debian/rules build gave error exit status 2
E: Failed autobuilding of package
I: unmounting /var/cache/pbuilder/ccache filesystem
I: unmounting dev/pts filesystem
I: unmounting proc filesystem
I: cleaning the build env
I: removing directory /var/cache/pbuilder/build//3040 and its subdirectories

Cheers,
Kumadasu


2012/10/26 21:43 "Kumadasu" <kuma...@gmail.com>:
>
> Hi, Nicolas
>
> Thank you for your information.
>
> I have finished to install 12.10. But I couldn't find
> driver for SGX. I installed jockey-common
> and run jockey-text.
> But nothing is occur.
>
> I have not tried TI OMAP PPA,
> there is no TI OMAP PPA for quantal isn't it.
>
> Now I'm trying to rebuild chromium22 for precise.
> It takes some hour. I'll report here after finishing rebuild.
> I hope no configuration is needed.
> I don't know about porting ;-)
>
>
> 2012/10/26 Nicolas Dechesne <nde...@gmail.com>:

Kumadasu

unread,
Oct 26, 2012, 8:43:57 AM10/26/12
to panda...@googlegroups.com
Hi, Nicolas

Thank you for your information.

I have finished to install 12.10. But I couldn't find
driver for SGX. I installed jockey-common
and run jockey-text.
But nothing is occur.

I have not tried TI OMAP PPA,
there is no TI OMAP PPA for quantal isn't it.

Now I'm trying to rebuild chromium22 for precise.
It takes some hour. I'll report here after finishing rebuild.
I hope no configuration is needed.
I don't know about porting ;-)


2012/10/26 Nicolas Dechesne <nde...@gmail.com>:

Kumadasu

unread,
Oct 31, 2012, 10:08:49 AM10/31/12
to panda...@googlegroups.com
I tried chromium 22 on omap-trunk.
But it couldn't run.

I got segmentation fault, no window.
Anybody could run it?

Or where should I start to investigate from?
I want to help development, and run new chromium!!

Cheers,
kumadasu


2012/10/28 Kumadasu <kuma...@gmail.com>:

Nicolas Dechesne

unread,
Oct 31, 2012, 1:14:13 PM10/31/12
to panda...@googlegroups.com
On Wed, Oct 31, 2012 at 3:08 PM, Kumadasu <kuma...@gmail.com> wrote:
> I got segmentation fault, no window.
> Anybody could run it?

good. same status here ;-)

>
> Or where should I start to investigate from?
> I want to help development, and run new chromium!!

if you can debug that specific issue, it would be really nice. iirc,
it segfaults very quickly, there must be a build or lib depends
issues...

let us know

Kumadasu

unread,
Nov 3, 2012, 1:50:02 PM11/3/12
to panda...@googlegroups.com
Hi Nicolas

I'm not good at debugging.
I sent bug report and I checked backtrace.
I don't know where I sent the report to, you or someone else.
I'll send you crash
log(/var/crash/_usr_lib_chromium-browser_chromium-browser.1000.crash)
after this email.

It is similar to the post on Oct 15, 2012 by robe.
http://code.google.com/p/chromium/wiki/LinuxChromiumArm

He or she said that is caused by gold bug.

The result in my case is like below.

***@***:~$ apport-retrace -g
/var/crash/_usr_lib_chromium-browser_chromium-browser.1000.crash
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabihf".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>.
Reading symbols from
/usr/lib/chromium-browser/chromium-browser...Reading symbols from
/usr/lib/debug/usr/lib/chromium-browser/chromium-browser...(no
debugging symbols found)...done.
(no debugging symbols found)...done.
warning: core file may not match specified executable file.
[New LWP 10533]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
Core was generated by `/usr/lib/chromium-browser/chromium-browser'.
Program terminated with signal 11, Segmentation fault.
#0 0x0020d978 in ?? ()
(gdb) bt
#0 0x0020d978 in ?? ()
#1 0xb611542e in __libc_csu_init ()
#2 0xb37ecf98 in __libc_start_main () from /lib/arm-linux-gnueabihf/libc.so.6
#3 0xb45704da in _start ()
(gdb)



2012/11/1 Nicolas Dechesne <nde...@gmail.com>:

Rob Clark

unread,
Nov 5, 2012, 5:49:23 PM11/5/12
to panda...@googlegroups.com
It was a while ago that I last built chromium, but I think this was
the error that I was seeing until I disabled neon.. I don't really
know what the root issue was but somehow having neon enabled was
resulting in something getting corrupted at startup.

BR,
-R

Kumadasu

unread,
Nov 6, 2012, 5:41:16 PM11/6/12
to panda...@googlegroups.com
Rob, Thank you for your information.

I greped and I found one 'arm_neon=0' in debian/rules.
Is it enough? Or have to add somewhere other 'arm_neon=0'?

kumadasu@kumadasu-MBA:~/cross/chromium22ti/chromium-browser-22.0.1229.79~r158531$
ls ..
chromium-browser-22.0.1229.79~r158531
chromium-browser_22.0.1229.79~r158531-0ubuntu1+ti1.diff.gz
chromium-browser_22.0.1229.79~r158531-0ubuntu1%2Bti1.dsc
chromium-browser_22.0.1229.79~r158531.orig.tar.gz
kumadasu@kumadasu-MBA:~/cross/chromium22ti/chromium-browser-22.0.1229.79~r158531$
grep -3 -r "neon" .
./debian/rules-ifneq (,$(findstring arm,$(DEB_BUILD_ARCH)))
./debian/rules-GYP_DEFINES += \
./debian/rules- arm_thumb=1 \
./debian/rules: arm_neon=0 \
./debian/rules- arm_fpu=vfpv3-d16 \
./debian/rules- target_arch=arm \
./debian/rules- disable_nacl=1 \
--
./debian/copyright-Copyright: Copyright: 2007 Siarhei Siamashka
<ss...@users.sourceforge.net>:
./debian/copyright-License: LGPL (v2.1 or later)
./debian/copyright-
./debian/copyright:Files:
src/third_party/ffmpeg/source/patched-ffmpeg-mt/libavcodec/arm/{dsputil_neon.c}
./debian/copyright-Copyright: Copyright: 2008 Mans Rullgard <ma...@mansr.com>:
./debian/copyright-License: LGPL (v2.1 or later)
./debian/copyright-
--
./debian/changelog- * Promote Uyghur to the list of supported translations
./debian/changelog- - update debian/rules
./debian/changelog- - update debian/control
./debian/changelog: * Fix the FTBFS on arm by re-adding the lost
arm_neon=0, and really set armv7=1
./debian/changelog- on maverick and natty
./debian/changelog- - update debian/rules
./debian/changelog- * Fix the broken symlinks in /usr/share/doc
created by CDBS (See LP: #194574)
kumadasu@kumadasu-MBA:~/cross/chromium22ti/chromium-browser-22.0.1229.79~r158531$


2012/11/6 Rob Clark <robd...@gmail.com>:

Rob Clark

unread,
Nov 7, 2012, 9:52:11 AM11/7/12
to panda...@googlegroups.com
On Tue, Nov 6, 2012 at 4:41 PM, Kumadasu <kuma...@gmail.com> wrote:
> Rob, Thank you for your information.
>
> I greped and I found one 'arm_neon=0' in debian/rules.
> Is it enough? Or have to add somewhere other 'arm_neon=0'?

that should be.. fwiw, I used:

GYP_DEFINES="chromeos=1 target_arch=arm sysroot=/chroot/precise-armhf
disable_nacl=1 linux_use_tcmalloc=0 armv7=1 arm_thumb=1 arm_neon=0
arm_float_abi=hard v8_use_arm_eabi_hardfloat=true "

but I didn't use the deb build mechanism.. I had just built manually.

BR,
-R

Kumadasu

unread,
Nov 7, 2012, 10:31:17 AM11/7/12
to panda...@googlegroups.com
Rob

Build manually? I have tried it some month ago,
but I didn't know how to change architecture from armel to armhf
and how to upgrade version. It seemed too difficult for me.

I watched Recipe 3 here
http://code.google.com/p/chromium/wiki/LinuxChromiumArm

Then now I know how to change architecture!


2012/11/7 Rob Clark <robd...@gmail.com>:
Reply all
Reply to author
Forward
0 new messages