guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Greenisland & SDDM


From: Ludovic Courtès
Subject: Greenisland & SDDM
Date: Sun, 02 Apr 2017 23:20:31 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

Hi!

Marius Bakke <address@hidden> skribis:

> One "greenisland" test is segfaulting. This package is needed for the
> "sddm" display manager, so I don't think we should merge until that is
> sorted. I'm looking into it now, but struggling to produce useful
> debugging information.

I’ve looked a bit and this seems to be a case of double-free:

--8<---------------cut here---------------start------------->8---
$ valgrind 
/tmp/guix-build-greenisland-0.9.0.1.drv-0/build/tests/auto/client/tst_client_registry
 
==16114== Memcheck, a memory error detector
==16114== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==16114== Using Valgrind-3.12.0 and LibVEX; rerun with -h for copyright info
==16114== Command: 
/tmp/guix-build-greenisland-0.9.0.1.drv-0/build/tests/auto/client/tst_client_registry
==16114== 
QML debugging is enabled. Only use this in a safe environment.
********* Start testing of TestRegistry *********
Config: Using QtTest library 5.7.1, Qt 5.7.1 (x86_64-little_endian-lp64 shared 
(dynamic) release build; by GCC 5.4.0)
PASS   : TestRegistry::initTestCase()
==16114== Invalid read of size 4
==16114==    at 0x9E71A94: pthread_mutex_lock (in 
/gnu/store/rmjlycdgiq8pfy5hfi42qhw3k7p6kdav-glibc-2.25/lib/libpthread-2.25.so)
==16114==    by 0x5556E9F: wl_proxy_destroy (in 
/gnu/store/syzisi3ib6q406nrxpb4723fhm2cmyml-wayland-1.13.0/lib/libwayland-client.so.0.3.0)
==16114==    by 0x509A42F: wl_registry_destroy 
(wayland-wayland-client-protocol.h:1065)
==16114==    by 0x509A42F: 
GreenIsland::Client::RegistryPrivate::~RegistryPrivate() (registry.cpp:121)
==16114==    by 0x509A488: 
GreenIsland::Client::RegistryPrivate::~RegistryPrivate() (registry.cpp:124)
==16114==    by 0x7C1336B: QObject::~QObject() (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x404D30: ~Registry (registry.h:54)
==16114==    by 0x404D30: testSetup (tst_registry.cpp:108)
==16114==    by 0x404D30: TestRegistry::qt_static_metacall(QObject*, 
QMetaObject::Call, int, void**) [clone .part.23] (tst_registry.moc:96)
==16114==    by 0x7BED4F9: QMetaMethod::invoke(QObject*, Qt::ConnectionType, 
QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, 
QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, 
QGenericArgument, QGenericArgument, QGenericArgument) const (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x4E4A213: ??? (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Test.so.5.7.1)
==16114==    by 0x4E4AB25: ??? (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Test.so.5.7.1)
==16114==    by 0x4E4B111: ??? (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Test.so.5.7.1)
==16114==    by 0x4E4B5E8: QTest::qExec(QObject*, int, char**) (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Test.so.5.7.1)
==16114==    by 0x403C60: main (tst_registry.cpp:306)
==16114==  Address 0x1274e4c0 is 240 bytes inside a block of size 320 free'd
==16114==    at 0x4C2BBD0: free (in 
/gnu/store/qr7xykwfxav3drx9c2fxazggpl8j9py9-valgrind-3.12.0/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==16114==    by 0x508F305: 
GreenIsland::Client::ClientConnectionPrivate::~ClientConnectionPrivate() 
(clientconnection.cpp:61)
==16114==    by 0x508F318: 
GreenIsland::Client::ClientConnectionPrivate::~ClientConnectionPrivate() 
(clientconnection.cpp:63)
==16114==    by 0x7C1336B: QObject::~QObject() (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x508FDA6: ~ClientConnection (clientconnection.h:43)
==16114==    by 0x508FDA6: 
GreenIsland::Client::ClientConnection::~ClientConnection() 
(clientconnection.h:43)
==16114==    by 0x7C0C887: QObject::event(QEvent*) (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x7BE2879: QCoreApplication::notify(QObject*, QEvent*) (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x7BE29D7: QCoreApplication::notifyInternal2(QObject*, QEvent*) 
(in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x7BE4FCA: QCoreApplicationPrivate::sendPostedEvents(QObject*, 
int, QThreadData*) (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x7C32EE2: ??? (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x8CF30D6: g_main_context_dispatch (in 
/gnu/store/0wps368gx0cn3ynrkbhzq5pxf75rng7y-glib-2.50.3/lib/libglib-2.0.so.0.5000.3)
==16114==    by 0x8CF3307: g_main_context_iterate.isra.29 (in 
/gnu/store/0wps368gx0cn3ynrkbhzq5pxf75rng7y-glib-2.50.3/lib/libglib-2.0.so.0.5000.3)
==16114==  Block was alloc'd at
==16114==    at 0x4C2C868: calloc (in 
/gnu/store/qr7xykwfxav3drx9c2fxazggpl8j9py9-valgrind-3.12.0/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==16114==    by 0x555755E: wl_display_connect_to_fd (in 
/gnu/store/syzisi3ib6q406nrxpb4723fhm2cmyml-wayland-1.13.0/lib/libwayland-client.so.0.3.0)
==16114==    by 0x5557741: wl_display_connect (in 
/gnu/store/syzisi3ib6q406nrxpb4723fhm2cmyml-wayland-1.13.0/lib/libwayland-client.so.0.3.0)
==16114==    by 0x508F6D3: 
GreenIsland::Client::ClientConnectionPrivate::_q_initConnection() 
(clientconnection.cpp:83)
==16114==    by 0x7C0C850: QObject::event(QEvent*) (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x7BE2879: QCoreApplication::notify(QObject*, QEvent*) (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x7BE29D7: QCoreApplication::notifyInternal2(QObject*, QEvent*) 
(in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x7BE4FCA: QCoreApplicationPrivate::sendPostedEvents(QObject*, 
int, QThreadData*) (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x7C32EE2: ??? (in 
/gnu/store/ihjf81is9xh4virnj9k5v87zv3z0idj8-qtbase-5.7.1/lib/libQt5Core.so.5.7.1)
==16114==    by 0x8CF30D6: g_main_context_dispatch (in 
/gnu/store/0wps368gx0cn3ynrkbhzq5pxf75rng7y-glib-2.50.3/lib/libglib-2.0.so.0.5000.3)
==16114==    by 0x8CF3307: g_main_context_iterate.isra.29 (in 
/gnu/store/0wps368gx0cn3ynrkbhzq5pxf75rng7y-glib-2.50.3/lib/libglib-2.0.so.0.5000.3)
==16114==    by 0x8CF33AB: g_main_context_iteration (in 
/gnu/store/0wps368gx0cn3ynrkbhzq5pxf75rng7y-glib-2.50.3/lib/libglib-2.0.so.0.5000.3)
--8<---------------cut here---------------end--------------->8---

However, <https://github.com/greenisland/greenisland> says that it’s
UNMAINTANED (sic), so I wonder what should be done.

Since, SDDM can be built without Greenisland (and thus without Wayland
support I suppose), what about doing just that?

Thanks,
Ludo’.

diff --git a/gnu/packages/display-managers.scm 
b/gnu/packages/display-managers.scm
index 307bc864e..d636fec8c 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -140,7 +140,7 @@ Qt-style API for Wayland clients.")
        ("qttools" ,qttools)))
     (inputs
      `(("glib" ,glib)
-       ("greenisland" ,greenisland)
+       ;; ("greenisland" ,greenisland)
        ("libxcb" ,libxcb)
        ("libxkbcommon" ,libxkbcommon)
        ("linux-pam" ,linux-pam)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]