Interesting! when I check out the source package, and build with the
above patch and like this:

  ./configure CFLAGS="-g -O0" --disable-gtk-docs --enable-lvm2
  make -j4
  sudo src/udisksd -rd --force-load-modules

then it loads the module just fine:

(udisksd:17050): udisks-WARNING **: 14:52:41.121: Can't load configuration file 
/usr/local/etc/udisks2/udisks2.conf
udisks-Message: 14:52:41.122: Loading module lvm2 ...
udisks-Message: 14:52:41.131: Acquired the name org.freedesktop.UDisks2 on the 
system message bus

Curiously, when I run the exact same ./configure invocation that the
Debian packaging does, and run it out of the build tree, it works.

It does seem to be *something* about the built module, though -- with
the patch above (running modules from build tree) it works, but without
the patch it loads them from /usr and fails.

Back trace:

#0  0x00007ffff79a8a5d in g_logv () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007ffff79a8cf3 in g_log () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff7ac2ead in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#3  0x00007ffff7aca18f in g_type_register_static () at 
/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#4  0x00007ffff7aca3e8 in g_type_register_static_simple () at 
/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#5  0x00007ffff46da71d in udisks_daemon_get_type_once () at udisksdaemon.c:115
        g_define_type_id = 0x1
#6  0x00007ffff46da69c in udisks_daemon_get_type () at udisksdaemon.c:115
        g_define_type_id = Python Exception <class 'ValueError'>: Variable 
'static_fundamental_type_nodes' not found.

        static_g_define_type_id = 0
#7  0x00007ffff46cb784 in udisks_module_lvm2_new (daemon=0x555555615340, 
cancellable=0x0, error=0x7fffffffe210)
    at udiskslinuxmodulelvm2.c:133
        __inst = 0x555555615340
        __t = Python Exception <class 'gdb.error'>: No type named TypeNode.

        __r = 32767
        initable = 0x5555556131b0
        __func__ = "udisks_module_lvm2_new"
#8  0x00005555555d21a3 in load_single_module_unlocked
    (manager=0x555555624950, sopath=0x555555637090 
"/usr/lib/x86_64-linux-gnu/udisks2/modules/libudisks2_lvm2.so", 
do_notify=0x7fffffffe208, error=0x7fffffffe210) at udisksmodulemanager.c:344
        state = 0x5555555eb6b5
        handle = 0x5555556a2450
        module_id = 0x555555692ea0 "lvm2"
        module_new_func_name = 0x555555613ae0 "\2602v\364\377\177"
        module_id_func = 0x7ffff46cb73a <udisks_module_id>
        module_new_func = 0x7ffff46cb75f <udisks_module_lvm2_new>
        module = 0x5555556a3693
        __func__ = "load_single_module_unlocked"
#9  0x00005555555d2505 in udisks_module_manager_load_modules 
(manager=0x555555624950) at udisksmodulemanager.c:448
        modules_to_load = 0x5555556a2150 = {0x555555637090}
        modules_to_load_tmp = 0x5555556a2150 = {0x555555637090}
        error = 0x0
        do_notify = 0
        __func__ = "udisks_module_manager_load_modules"
#10 0x0000555555578002 in load_modules_in_idle_cb (user_data=0x555555615340) at 
udisksdaemon.c:277
        daemon = 0x555555615340
#11 0x00007ffff79a0a61 in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#12 0x00007ffff79fc4ff in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#13 0x00007ffff79a14bf in g_main_loop_run () at 
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#14 0x00005555555776e8 in main (argc=1, argv=0x7fffffffe4d8) at main.c:184
        error = 0x0
        opt_context = 0x555555607f60
        ret = 1
        name_owner_id = 1
        sigint_id = 1
        __func__ = "main"


This keeps mystifying and evading me. More debugging tomorrow, but it's quickly 
nearing the point where I run out of time to debug this.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to udisks2 in Ubuntu.
https://bugs.launchpad.net/bugs/2040488

Title:
  loading lvm2 module crashes: udisks_module_lvm2_new: assertion
  'UDISKS_IS_DAEMON (daemon)' failed

Status in udisks2 package in Ubuntu:
  New
Status in udisks2 source package in Mantic:
  New

Bug description:
  I tried to do this with `apport-cli
  /var/crash/_usr_libexec_udisks2_udisksd.0.crash`, but 's'ending
  doesn't do anything obvious. I run this from a cloud image over ssh, I
  really don't have any GUI. So filing this manually.

  Trying to load the lvm2 module crashes udisks immediately:

     busctl call org.freedesktop.UDisks2
  /org/freedesktop/UDisks2/Manager org.freedesktop.UDisks2.Manager
  EnableModule sb lvm2 true

  
  udisksd[5709]: cannot register existing type 'UDisksDaemon'
  udisksd[5709]: g_once_init_leave: assertion 'result != 0' failed
  udisksd[5709]: udisks_module_lvm2_new: assertion 'UDISKS_IS_DAEMON (daemon)' 
failed
  systemd[1]: Started [email protected] - Process Core Dump 
(PID 5767/UID 0).

                                                Module libudev.so.1 from deb 
systemd-253.5-1ubuntu6.amd64
                                                 Module libsystemd.so.0 from 
deb systemd-253.5-1ubuntu6.amd64
                                                 Stack trace of thread 5709:
                                                 #0  0x000056079be701ad 
udisks_module_manager_load_modules (udisksd + 0x601ad)
                                                 #1  0x000056079be5fdf5 n/a 
(udisksd + 0x4fdf5)
                                                 #2  0x00007f7d5f122a11 n/a 
(libglib-2.0.so.0 + 0x5aa11)
                                                 #3  0x00007f7d5f17e46f n/a 
(libglib-2.0.so.0 + 0xb646f)
                                                 #4  0x00007f7d5f12346f 
g_main_loop_run (libglib-2.0.so.0 + 0x5b46f)
                                                 #5  0x000056079be323d2 main 
(udisksd + 0x223d2)
                                                 #6  0x00007f7d5ee280d0 
__libc_start_call_main (libc.so.6 + 0x280d0)
                                                 #7  0x00007f7d5ee28189 
__libc_start_main_impl (libc.so.6 + 0x28189)
                                                 #8  0x000056079be324f5 _start 
(udisksd + 0x224f5)

  ProblemType: Crash
  Architecture: amd64
  Date: Wed Oct 25 12:13:14 2023
  DistroRelease: Ubuntu 23.10
  ExecutablePath: /usr/libexec/udisks2/udisksd
  Package: udisks2 2.10.1-1ubuntu1

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/udisks2/+bug/2040488/+subscriptions


-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to