[OpenIndiana-discuss] Fwd: Add inotify support to illumos-gate

Udo Grabowski (IMK) udo.grabowski at kit.edu
Mon May 8 09:13:18 UTC 2023


On 05/05/2023 09:14, Stephan Althaus wrote:
> Hello!
>
> The hint to use inotify support in glib was from you, can you please shed a
> light on this?
>
> I am lacking all sorts of background on this stuff :-{
>
> To test this, we would have to patch and build inotify support in illumos-gate,
> install it, then compile glib2 with a check if inotify was found and install,
> and then mate-system-monitor... to see if this approach does indeed help.. Is
> there some easier way?
>
> Regards,
> Stephan
>
> -------- Forwarded Message --------
> Subject: 	Re: [OpenIndiana-discuss] Add inotify support to illumos-gate
> Date: 	Tue, 2 May 2023 20:25:49 +0200
> From: 	Till Wegmüller <toasterson at gmail.com>
> Reply-To: 	Discussion list for OpenIndiana <openindiana-discuss at openindiana.org>
> To: 	openindiana-discuss at openindiana.org
>
>
>
> Hi Stephan
>
> inotify has stubbed headers that work roughly decently. Any software should use
> FEN or the Native API. We add it to every programming language we can and should
> also add it to mate-system-monitor or rather make it use kstat if it tries to
> poll things under /proc which it should not for us.
>
> What does mate-system-monitor use inotify for?
> ...

The parts that use Gio for monitoring in mate-system-monitor are located
in prettytable.cpp, where it monitors its apps-cache, and in procman-app.cpp,
where it monitors mounts and somehow uses it to process a commandline; that's
also the place it crashes (after complaining about the missing monitor
facility):

ts(~) env LD_LIBRARY_PATH=/usr/gcc/10/lib dbx `which mate-system-monitor`
For information about new features see `help changes'
To remove this message, put `dbxenv suppress_startup_message 7.7' in your .dbxrc
Reading mate-system-monitor
Reading ld.so.1
Reading libc.so.1
Reading libgtkmm-3.0.so.1.1.0
Reading libgiomm-2.4.so.1.3.0
Reading libglibmm-2.4.so.1.3.0
Reading libstdc++.so.6.0.28
Reading libm.so.2
Reading libgcc_s.so.1
Reading libgdkmm-3.0.so.1.1.0
Reading libstdc++.so.6.0.24
Reading libgcc_s.so.1
Reading libatkmm-1.6.so.1.1.0
Reading libsigc-2.0.so.0.0.0
Reading libgtk-3.so.0.2404.30
Reading libgdk-3.so.0.2404.30
Reading libgobject-2.0.so.0.7400.7
Reading libglib-2.0.so.0.7400.7
Reading libffi.so.6.0.4
Reading libepoxy.so.0.0.0
Reading libcairo.so.2.11600.0
Reading libEGL.so.1
Reading libpthread.so.1
Reading librt.so.1
Reading libsocket.so.1
Reading libnvidia-glsi.so.1
Reading libnsl.so.1
Reading libxcb.so.1.1.0
Reading libxcb-render.so.0.0.0
Reading libGL.so.1
Reading libnvidia-tls.so.1
Reading libnvidia-glcore.so.1
Reading libX11.so.4.0.0
Reading libXext.so.0.0.0
Reading libatk-1.0.so.0.23809.1
Reading libgio-2.0.so.0.7400.7
Reading libpango-1.0.so.0.5000.14
(dbx) run
Running: mate-system-monitor
(process id 7317)
Reading libgtop-2.0.so.11.0.1
Reading libxml2.so.2.10.4
Reading libicuuc.so.68.2
Reading libicudata.so.68.2
Reading librsvg-2.so.2.40.21
Reading libgmodule-2.0.so.0.7400.7
Reading libwnck-3.so.0.3.0
Reading libpangocairo-1.0.so.0.5000.14
Reading libgdk_pixbuf-2.0.so.0.3612.0
Reading libcairo-gobject.so.2.11600.0
Reading libXau.so.6.0.0
Reading libkstat.so.1
Reading libcairomm-1.0.so.1.4.0
Reading libz.so.1.2.13
Reading liblzma.so.5.4.2
Reading libpangoft2-1.0.so.0.5000.14
Reading libfontconfig.so.1.12.0
Reading libcroco-0.6.so.3.0.1
Reading libXrender.so.1.3.0
Reading libstartup-notification-1.so.0.0.0
Reading libXRes.so.1.0.0
Reading libXinerama.so.1.0.0
Reading libXrandr.so.2.2.0
Reading libXcursor.so.1.0.2
Reading libXi.so.5.0.0
Reading libXcomposite.so.1.0.0
Reading libXdamage.so.1.1.0
Reading libXfixes.so.1.0.0
Reading libatk-bridge-2.0.so.0.0.0
Reading libfribidi.so.0.4.0
Reading libharfbuzz.so.0.60720.0
Reading libfreetype.so.6.19.0
Reading libresolv.so.2
Reading libthai.so.0.3.1
Reading libpixman-1.so.0.42.2
Reading libdl.so.1
Reading libpng16.so.16.39.0
Reading libX11-xcb.so.1.0.0
Reading libpcre2-8.so.0.11.2
Reading libmp.so.2
Reading libmd.so.1
Reading libexpat.so.1.8.10
Reading libxcb-util.so.1.0.0
Reading libatspi.so.0.0.1
Reading libdbus-1.so.3.19.15
Reading libgraphite2.so.3.2.1
Reading libbz2.so.1
Reading libbrotlidec.so.1.0.9
Reading libbrotlicommon.so.1.0.9
Reading libdatrie.so.1.4.0
Reading libXdmcp.so.6.0.0
Reading libbsm.so.1
Reading libsecdb.so.1
Reading libtsol.so.2
Reading libinetutil.so.1
Reading libscf.so.1
Reading libuutil.so.1
Reading libgen.so.1
Reading libnvpair.so.1
Reading libsmbios.so.1
Reading libdevinfo.so.1
Reading libsec.so.1
Reading libavl.so.1
Reading libidmap.so.1
Reading libpangomm-1.4.so.1.0.30
Reading libgvfsdbus.so
Reading libcanberra-gtk3-module.so
Reading xlcUTF8Load.so.2.0.0
Reading libdconfsettings.so
Reading libgsettingsgconfbackend.so
Reading libgconf-2.so.4.1.5
Reading libORBit-2.so.0.1.0

(<unknown>:7317): glibmm-CRITICAL **: 10:56:52.629:
unhandled exception (type Glib::Error) in signal handler:
domain: g-io-error-quark
code  : 0
what  : Unable to find default local file monitor type

t at 1 (l at 1) signal SEGV (no mapping at the fault address) in 
ProcmanApp::on_command_line at 0x44b0a1
0x000000000044b0a1: on_command_line+0x0111:     movq 0x0000000000008258(%rax),%rdi
(dbx) where
current thread: t at 1
=>[1] ProcmanApp::on_command_line(0x0, 0xb274d0, 0x8, 0x1, 0x7fffbfff6ca4, 
0xd1f3e0), at 0x44b0a1
    [2] Gio::Application_Class::command_line_callback(0x0, 0x0, 0x0, 0x0, 0x0, 
0x0), at 0x5fffac769ab0
    [3] 0x7fffbfff6e10(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x7fffbfff6e10
    [4] _g_cclosure_marshal_INT__OBJECTv(0x0), at 0x5fffa590ce5f
    [5] _g_closure_invoke_va(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x5fffad9caa08
    [6] 0xb676f0(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xb676f0
    [7] g_signal_emit_valist(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x5fffad9eaf92
    [8] 0x5fffaf25efa0(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x5fffaf25efa0
(dbx)

-- 
Dr.Udo Grabowski   Inst.f.Meteorology & Climate Research IMK-ASF-SAT
http://www.imk-asf.kit.edu/english/sat.php
KIT - Karlsruhe Institute of Technology           http://www.kit.edu
Postfach 3640,76021 Karlsruhe,Germany T:(+49)721 608-26026 F:-926026




More information about the openindiana-discuss mailing list