[ARM] use egl equivalent instead of gl [$5]

Bug #1214833 reported by Cody Garver
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Greeter
Confirmed
Medium
Unassigned

Bug Description

This is blocking elementary OS being ported entirely to armhf

(05:04:34 AM) ricotz: pantheon-greeter must use some egl equivalent instead of gl when building on armhf

Tags: arm bounty

Related branches

Revision history for this message
Sergey "Shnatsel" Davidoff (shnatsel) wrote :

Interestingly enough, Pantheon Greeter uses Clutter which runs on OpenGL ES and EGL just fine. Do we have a more detailed problem description? What about Gala?

Revision history for this message
Cody Garver (codygarver) wrote :

My personal build log http://pastebin.com/3vry1a4F

Revision history for this message
Sergey "Shnatsel" Davidoff (shnatsel) wrote :

Launchpad fails when you request package "gl" and says there's no such thing on ARM: https://launchpadlibrarian.net/148040543/buildlog_ubuntu-precise-armhf.pantheon-greeter_1.0.2-0~r207%2Bpkg22%2Br1~precise1_FAILEDTOBUILD.txt.gz

So I suspect Pantheon Greeter makes some direct GL calls bypassing Clutter abstraction layer.

Revision history for this message
Raphael Isemann (teemperor) wrote :

We use at least one GL call, the one with the texture size limit. I think we can remove it in the worst case as we are anyway downscaling to screen-size via the CPU before we render. At least i can remember it works without the call.

If there is some fancy trick to conditional compile some code-piece only on arm, that would be probably the best solution, but i have no idea how to achieve such a thing.

Changed in pantheon-greeter:
assignee: nobody → Raphael Isemann (teemperor)
status: Confirmed → In Progress
Revision history for this message
Cameron Norman (cameronnemo) wrote :

@teemperor I found this: http://sourceforge.net/p/predef/wiki/Architectures/. I am pretty sure you get ifdefs with Vala, no?

Cody Garver (codygarver)
Changed in pantheon-greeter:
milestone: isis-beta1 → isis-beta2
importance: High → Medium
summary: - [ARM] use egl equivalent instead of gl
+ [ARM] use egl equivalent instead of gl [$5]
Revision history for this message
Raphael Isemann (teemperor) wrote :

@cameronnemo

Well, there are also ARM pc's with OpenGL according to shnatsel, so i think we just make a normal flag for make if people want to use the opengl thingy.

Cody Garver (codygarver)
Changed in pantheon-greeter:
milestone: freya-beta2 → freya-beta3
Revision history for this message
memeka (mihailescu2m) wrote :

as of 13/01/2015, both the GL code and without-gl branch compile on arm, but crash.
I'll try to geta log.

Revision history for this message
memeka (mihailescu2m) wrote :

Looks like the greeter exists with error because it cannot initialize Clutter:

if (init != Clutter.InitError.SUCCESS)
        error ("Clutter could not be intiailized");

I don't know why this happens, gala works OK with clutter and egl. My current workaround is to use gtk-greeter (which results in an empty X11 session), and add "gala --replace; sleep 1 ; plank & wingpanel &" to .xprofile => https://www.youtube.com/watch?v=mjDsKmP0thE

This is the lightdm output:

[+0.32s] DEBUG: Session pid=2748: Running command /usr/lib/lightdm/lightdm-greeter-session /usr/share/xgreeters/pantheon-greeter
[+0.32s] DEBUG: Creating shared data directory /var/lib/lightdm-data/lightdm
[+0.32s] DEBUG: Session pid=2748: Logging to /var/log/lightdm/x-0-greeter.log
[+0.34s] DEBUG: Activating VT 7
[+0.34s] DEBUG: Activating login1 session c2
[+1.11s] DEBUG: Session pid=2748: Greeter closed communication channel
[+1.11s] DEBUG: Session pid=2748: Exited with return value 0
[+1.11s] DEBUG: Seat: Session stopped
[+1.11s] DEBUG: Seat: Stopping; failed to start a greeter

and this is x-0-greeter.log:

(pantheon-greeter:2993): Clutter-CRITICAL **: Unable to initialize Clutter: Failed to connected to any renderer due to constraints
** (pantheon-greeter:2993): ERROR **: PantheonGreeter.vala:295: Clutter could not be intiailized

Revision history for this message
Cody Garver (codygarver) wrote :

I think the rewrite may have fixed this, I am able to compile for armhf. But I have not yet got my hardware in a state that I can test an actual GUI yet.

Changed in pantheon-greeter:
milestone: freya-rc1 → loki-beta1
Revision history for this message
memeka (mihailescu2m) wrote :

The issue is still present.
Starting pantheon-greeter in an existing X11 instance (e.g. sudo xinit & pantheon-greeter ) works; using light-dm is not working (error is Clutter could not be initialized)

Cody Garver (codygarver)
Changed in pantheon-greeter:
assignee: Raphael Isemann (teemperor) → nobody
status: In Progress → Confirmed
tags: added: bounty
Cody Garver (codygarver)
Changed in pantheon-greeter:
milestone: loki-beta1 → loki+1-beta1
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related blueprints

Remote bug watches

Bug watches keep track of this bug in other bug trackers.