Page MenuHomePhabricator

E 0.22.4 all X UI hangs on FreeBSD
Closed, ResolvedPublic

Description

Hello and thank you for new Enlightenment !! Its elegant and beautiful. Because of bug in XFCE4 that prevented correct working on multiple displays I have switched to new Enlightenment and everything works like a charm.. I liked the startup creator and reaaallly lots of customizable options with total minimal set of dependencies and amazingly small footprint..

..except Enlightenment hangs really often on both my FreeBSD 12.0-RELEASE-p3 AMD64 machines:

  1. AMD64 CPUx6 + 16GB RAM + RADEON RX580 8GB desktop.
  2. Panasonic ToughBook + i5 + 8GB RAM + Integrated Intel.

This makes my working really hard because the total display freeze happens almost 10..20 times per day.. the mouse cursor is moving, apps does seem to work fine in the background (i.e. music playing), but the whole display is frozen and undesopnsive (except mouse pointer). The only way to make it work again is to get back to console, kill the Xorg, and start over..

Please advise what could be the problem and fix?

  • I have switched between Software and OpenGL compositing, no change.
  • I have disables all Compositing, no change.
% uname -a
FreeBSD 0xCFC2 12.0-RELEASE-p3 FreeBSD 12.0-RELEASE-p3 GENERIC  amd64

% pkg info enlightenment
enlightenment-0.22.4,2
Name           : enlightenment
Version        : 0.22.4,2
Installed on   : Fri Apr 12 02:01:33 2019 CEST
Origin         : x11-wm/enlightenment
Architecture   : FreeBSD:12:amd64
Prefix         : /usr/local
Categories     : enlightenment x11-wm
Licenses       : BSD2CLAUSE
Maintainer     : enlightenment@FreeBSD.org
WWW            : https://www.enlightenment.org/
Comment        : Artistic X window manager
Options        :
        ALSA           : on
        NLS            : on
        PULSEAUDIO     : off
Shared Libs required:
        libpulse-simple.so.0
        libeldbus.so.1
        libxcb-shape.so.0
        libefl.so.1
        libefreet.so.1
        libedje.so.1
        libecore.so.1
        libecore_ipc.so.1
        libemotion.so.1
        libpulse.so.0
        libxcb.so.1
        libasound.so.2
        libefreet_mime.so.1
        libecore_input.so.1
        libevas.so.1
        libeio.so.1
        libecore_evas.so.1
        libecore_imf.so.1
        libefreet_trash.so.1
        libecore_con.so.1
        libeina.so.1
        libintl.so.8
        libecore_file.so.1
        libecore_x.so.1
        libecore_input_evas.so.1
        libethumb_client.so.1
        libelementary.so.1
        libxcb-keysyms.so.1
        libeo.so.1
        libeet.so.1
Annotations    :
        FreeBSD_version: 1200086
        repo_type      : binary
        repository     : FreeBSD
Flat size      : 30.4MiB
Description    :
A very artistic X window manager.  Among other attributes,
Enlightenment makes for quite impressive screen shots.

WWW: https://www.enlightenment.org/
cederom created this task.Apr 12 2019, 10:31 AM

How can I track down the problem?

I had to switch back to XFCE4 because working with E seems unreliable at this point.. is this only my problem or anyone experiences similar issues?

Are there any VERBOSE or DEBUG functionalities or symbols I can build into E ? I cannot see anything like this in FreeBSD's Port but I can add one :-)

cederom, you should begin with full uninstall E and EFL, port version of EFL is really outdated. Then you should download the last versions from enlightenment.org (or checkout from Enlightenment git) and build both EFL and E from sources.
I'm on git versions (dated some months ago) on FreeBSD 11.2. It's stable, I'm using it every day ~12hrs by day without freezes. I tested everything on FreeBSD 12 too without problems.
I did not (yet) tested the last released version of EFL.
You can ask for help in maillist if you have problems with build.

Thank you Peter! Enlightenment really rox! Just as my beloved FreeBSD! This is something really really new and the design is simply amazing.. really reminds me of the old good Unix or even Amiga times! :-)

Will try to build the latest version of E + EFL.. if that works will even maybe update the port itself.. but maybe its also a good time for a release if lots of fixes are implemented already? :-)

Best regards from Polska :-)
Tomek

ProhtMeyhet triaged this task as Pending on user input priority.Aug 7 2019, 3:39 AM
ProhtMeyhet added a subscriber: ProhtMeyhet.

Thank you Peter! Enlightenment really rox! Just as my beloved FreeBSD!

so this issue is resolved?

not really :-( some issues that i have noticed:

  1. ui hangs but mouse moves. sometimes after several minutes things get back to normal sometimes not.
  2. window switcher / selector is buggy. almost always with virtualbos running it cannot switch back to other windows and does not show windows on the list while switching with Ctrl+Tab. this is critical as i have to restart session and interrupt my work.

that never happens on the same machines running xfce4 or lxqt..

ProhtMeyhet raised the priority of this task from Pending on user input to Incoming Queue.Aug 7 2019, 4:28 AM

not really :-( some issues that i have noticed:

  1. ui hangs but mouse moves. sometimes after several minutes things get back to normal sometimes not.
  2. window switcher / selector is buggy. almost always with virtualbos running it cannot switch back to other windows and does not show windows on the list while switching with Ctrl+Tab. this is critical as i have to restart session and interrupt my work.

    that never happens on the same machines running xfce4 or lxqt..

sorry to hear that, but i am not familiar with any BSD. on Linux i can switch with CTRL+ALT+F1 to a virtual console and try to find out what is going on. high system load would, for example, be an explanation.

aren't there any logs? my linux kernel is currently providing me with presumably hardware (or firmware) errors like this

[  +0.000022] [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
[  +0.039458] [drm:radeon_uvd_cs_parse [radeon]] *ERROR* Invalid UVD handle 0x2fe60001!

no one really knows why, yet, but it's making mpv (an mplayer fork) not rendering a video.

Peter2121 added a comment.EditedAug 7 2019, 4:42 AM

Me too, sometimes I have problems with window switcher. It does not show the list, but only the next window icon & name. But I don't need to restart the session, the next invoking the switcher is normally correct.
And UI does not hang for me with the last versions of E/EFL.

one constant error that shows up at the console tells to: eina_btlog << EOF EOF.
sometimes it tells the resource is null os nonexistent. dont have it right now. maybe will try to catch and upload here so you have more detailed information..

For me I've found a relatively reliable testcase for this: shellementary. When I play a video, have a browser open and a system load roughly equal to the number of cpu cores, e hangs for up to 5 seconds when opening it the first time. So it seems either e or Xorg is waiting for the creation of this window, but shellementary sometimes takes too long (maybe on memory init?)

shellementary --info --text="bla"

testing a bit more, this script is very effective for stopping e for up to 5 seconds for me. First send a via notify-send which returns immediately, start date and then shellementary. Needs a bit higher load and a hardware accelerated video playing. Browsers like Firefox and Chromium are helpful as well. Restarts after 900 seconds which seems enough to purge the kernel cache of shellementary and its librarys.

I've checked load, was at 2 with 2 cores, ~823 MB of ram free, 212 MB of swap used and radeontop reported 65% usage of my ATI card.

#!/bin/sh

function testd()
{
        i=1
        notify-send 'testd' --icon=dialog-information
        date
        shellementary --info --text="testd $i" 2> /dev/null
        ((i+=1))
        sleep 900
        testd
}

testd
cederom closed this task as Resolved.Apr 19 2020, 5:41 PM
cederom claimed this task.

I am working on EFL (1.20.7 ->1.23.3) and Enlightenment (0.22.4 -> 0.23.1) upgrade on FreeBSD. Problem is fixed in new release. Things are almost ready and will show up soon :-)

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=245594
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=245596

I would also like to add Wayland support and skip Xorg. However I noticed that someone hardcoded linux_dma code into EFL.. will report that in a separate bug :-(

cederom,
I think it would be better to skip EFL 1.23 and E 0.22 and wait for (soon) release of EFL 1.24 (beta now) and E 0.24 as there is a huge problem solved in EFL 1.24 https://phab.enlightenment.org/T8490

cederom added a comment.EditedApr 20 2020, 1:23 AM

Hello @Peter2121 and thank you for the hint! I also observed this efreetd problem and I am more than happy that it is resolved by now :-)

I am working on EFL 1.23.3 and E 0.23.1 as it fixes even more blocking bug of screen freezes in random moments. That was really disturbing to the work.

The port build infrastructure was updated to match current EFL/E meson build methods. Updating now to any following release should be only a matter of seconds and I am willing to do the work :-)