Debian Bug report logs -
#544354
glib2.0: gio breaks on Lenny kernels when calling inotify_init1()
Toggle useless messages
Report forwarded
to
debian-bugs-dist@lists.debian.org, Loic Minier <lool@dooz.org>:
Bug#544354; Package
glib2.0.
(Sun, 30 Aug 2009 21:06:15 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Michael Stone <michael@laptop.org>:
New Bug report received and forwarded. Copy sent to
Loic Minier <lool@dooz.org>.
(Sun, 30 Aug 2009 21:06:15 GMT)
Full text and
rfc822 format available.
Message #5 received at submit@bugs.debian.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Package: glib2.0
Severity: normal
Summary
-------
Recent upstream patches contained in glib2.0_2.20.4-1 cause the glib2.0-derived
packages in squeeze to depend on kernel functionality -- inotify_init1() --
that is not available in Lenny kernels. These packages should not depend on
such functionality until squeeze is released.
Remediations
------------
A reasonable compromise might be to adjust the glib2.0 source code to call
inotify_init whenever inotify_init1 fails, as in the following outline:
> inotify_instance_fd = -1;
>
> #ifdef HAVE_INOTIFY_INIT1
> inotify_instance_fd = inotify_init1 (IN_CLOEXEC);
> #endif
>
> if (inotify_instance_fd < 0)
> inotify_instance_fd = inotify_init ();
>
> if (inotify_instance_fd < 0)
> return FALSE;
(Thanks to dilinger@queued.mit.edu for the code.)
Details
-------
I periodically test the Sugar packaging in squeeze and sid by installing
sugar-0.84 into clean Debian chroots on top of my main (lenny) machine. Last
week, Sugar regressed in that it became unable to launch the Journal or to find
installed activities and the Sugar ~/.sugar/default/logs/shell.log file
contained the following suspicious new messages:
> (sugar-session:1844): GLib-GIO-WARNING **: Could not initialize inotify
>
> Traceback (most recent call last):
> File "/usr/lib/python2.5/site-packages/jarabe/desktop/favoritesview.py", line 122, in __connect_to_bundle_registry_cb
> registry = bundleregistry.get_registry()
> File "/usr/lib/python2.5/site-packages/jarabe/model/bundleregistry.py", line 394, in get_registry
> _instance = BundleRegistry()
> File "/usr/lib/python2.5/site-packages/jarabe/model/bundleregistry.py", line 58, in __init__
> monitor = directory.monitor_directory()
> gio.Error: Unable to find default local directory monitor type
Investigating these messages pointed me to
gio/inotify/inotify-helper.c:89,
gio/inotify/inotify-kernel.c:194, and
gio/glocaldirectorymonitor.c:295
in the glib2.0 source code.
The problem seems to have been introduced into inotify-kernel.c in this recent
commit:
http://git.gnome.org/cgit/glib/commit/?id=2192f1003f27eaf523917a046a42d8fc0019a8
7b
which results in the following logic in inotify-kernel.c:
> #ifdef HAVE_INOTIFY_INIT1
> inotify_instance_fd = inotify_init1 (IN_CLOEXEC);
> #else
> inotify_instance_fd = inotify_init ();
> #endif
>
> if (inotify_instance_fd < 0)
> return FALSE;
Unfortunately, inotify_init1() only became available in kernel-2.6.27. Lenny is
currently using 2.6.26.
[signature.asc (application/pgp-signature, attachment)]
Information forwarded
to
debian-bugs-dist@lists.debian.org, Loic Minier <lool@dooz.org>:
Bug#544354; Package
glib2.0.
(Tue, 01 Sep 2009 10:36:14 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
544354@bugs.debian.org:
Extra info received and forwarded to list. Copy sent to
Loic Minier <lool@dooz.org>.
(Tue, 01 Sep 2009 10:36:14 GMT)
Full text and
rfc822 format available.
Message #10 received at 544354@bugs.debian.org (full text, mbox):
[Message part 1 (text/plain, inline)]
forwarded 544354 http://bugzilla.gnome.org/show_bug.cgi?id=593775
tag 544354 + pending
thanks
Le dimanche 30 août 2009 à 17:05 -0400, Michael Stone a écrit :
> Recent upstream patches contained in glib2.0_2.20.4-1 cause the glib2.0-derived
> packages in squeeze to depend on kernel functionality -- inotify_init1() --
> that is not available in Lenny kernels. These packages should not depend on
> such functionality until squeeze is released.
Thanks for the investigation. It explains a lot of the issues that
appeared post-lenny with lenny kernels.
> Remediations
> ------------
>
> A reasonable compromise might be to adjust the glib2.0 source code to call
> inotify_init whenever inotify_init1 fails, as in the following outline:
>
> > inotify_instance_fd = -1;
> >
> > #ifdef HAVE_INOTIFY_INIT1
> > inotify_instance_fd = inotify_init1 (IN_CLOEXEC);
> > #endif
> >
> > if (inotify_instance_fd < 0)
> > inotify_instance_fd = inotify_init ();
> >
> > if (inotify_instance_fd < 0)
> > return FALSE;
>
> (Thanks to dilinger@queued.mit.edu for the code.)
Looks like a reasonable solution. Applied in our SVN and forwarded
upstream.
Cheers,
--
.''`. Josselin Mouette
: :' :
`. `' “I recommend you to learn English in hope that you in
`- future understand things” -- Jörg Schilling
[signature.asc (application/pgp-signature, inline)]
Added tag(s) pending.
Request was from
Josselin Mouette <joss@debian.org>
to
control@bugs.debian.org.
(Tue, 01 Sep 2009 10:36:16 GMT)
Full text and
rfc822 format available.
Forcibly Merged 543962 544354.
Request was from
Josselin Mouette <joss@debian.org>
to
control@bugs.debian.org.
(Wed, 02 Sep 2009 20:09:08 GMT)
Full text and
rfc822 format available.
Reply sent
to
Sebastian Dröge <slomo@debian.org>:
You have taken responsibility.
(Sat, 05 Sep 2009 06:57:13 GMT)
Full text and
rfc822 format available.
Notification sent
to
Michael Stone <michael@laptop.org>:
Bug acknowledged by developer.
(Sat, 05 Sep 2009 06:57:13 GMT)
Full text and
rfc822 format available.
Message #21 received at 544354-close@bugs.debian.org (full text, mbox):
Source: glib2.0
Source-Version: 2.21.6-1
We believe that the bug you reported is fixed in the latest version of
glib2.0, which is due to be installed in the Debian FTP archive:
glib2.0_2.21.6-1.diff.gz
to pool/main/g/glib2.0/glib2.0_2.21.6-1.diff.gz
glib2.0_2.21.6-1.dsc
to pool/main/g/glib2.0/glib2.0_2.21.6-1.dsc
glib2.0_2.21.6.orig.tar.gz
to pool/main/g/glib2.0/glib2.0_2.21.6.orig.tar.gz
libglib2.0-0-dbg_2.21.6-1_amd64.deb
to pool/main/g/glib2.0/libglib2.0-0-dbg_2.21.6-1_amd64.deb
libglib2.0-0-refdbg_2.21.6-1_amd64.deb
to pool/main/g/glib2.0/libglib2.0-0-refdbg_2.21.6-1_amd64.deb
libglib2.0-0_2.21.6-1_amd64.deb
to pool/main/g/glib2.0/libglib2.0-0_2.21.6-1_amd64.deb
libglib2.0-data_2.21.6-1_all.deb
to pool/main/g/glib2.0/libglib2.0-data_2.21.6-1_all.deb
libglib2.0-dev_2.21.6-1_amd64.deb
to pool/main/g/glib2.0/libglib2.0-dev_2.21.6-1_amd64.deb
libglib2.0-doc_2.21.6-1_all.deb
to pool/main/g/glib2.0/libglib2.0-doc_2.21.6-1_all.deb
libglib2.0-udeb_2.21.6-1_amd64.udeb
to pool/main/g/glib2.0/libglib2.0-udeb_2.21.6-1_amd64.udeb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 544354@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Sebastian Dröge <slomo@debian.org> (supplier of updated glib2.0 package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.8
Date: Sat, 05 Sep 2009 07:15:58 +0200
Source: glib2.0
Binary: libglib2.0-0 libglib2.0-udeb libglib2.0-dev libglib2.0-0-dbg libglib2.0-data libglib2.0-doc libgio-fam libglib2.0-0-refdbg
Architecture: source all amd64
Version: 2.21.6-1
Distribution: experimental
Urgency: low
Maintainer: Loic Minier <lool@dooz.org>
Changed-By: Sebastian Dröge <slomo@debian.org>
Description:
libgio-fam - GLib Input, Output and Streaming Library (fam module)
libglib2.0-0 - The GLib library of C routines
libglib2.0-0-dbg - The GLib libraries and debugging symbols
libglib2.0-0-refdbg - The GLib library of C routines - refdbg library
libglib2.0-data - Common files for GLib library
libglib2.0-dev - Development files for the GLib library
libglib2.0-doc - Documentation files for the GLib library
libglib2.0-udeb - The GLib library of C routines - minimal runtime (udeb)
Closes: 544354
Changes:
glib2.0 (2.21.6-1) experimental; urgency=low
.
[ Josselin Mouette ]
* 10_inotify_init1.patch: fall back on inotify_init when inotify_init1
does not work, as happens with kernel versions < 2.6.27.
Closes: #544354.
.
[ Sebastian Dröge ]
* New upstream development release:
+ debian/libglib2.0-0.symbols:
- Update for the new version.
+ debian/rules:
- Update SHVER to 2.21.6.
* debian/control.in:
+ Updated Standards-Version to 3.8.3, no additional changes needed.
Checksums-Sha1:
797aa5ba3202e81b768854d01b04525c30d98abc 1673 glib2.0_2.21.6-1.dsc
1db6d6d411be58362c7cedc9cc022f1071ec94e5 7779941 glib2.0_2.21.6.orig.tar.gz
5718d4934c1063aded4ac7203be7635945fcbfaa 37059 glib2.0_2.21.6-1.diff.gz
5919a2fed75914ce5d687fc7890b7e9b3b2ea388 864348 libglib2.0-data_2.21.6-1_all.deb
2d3342974960dc0fa137bef7532bc8f9d92dde65 1393138 libglib2.0-doc_2.21.6-1_all.deb
0c3fef94ff22b806532efc0cafebcbb230252f37 982704 libglib2.0-0_2.21.6-1_amd64.deb
a92650a323ff0ab3e3fa59da70bd5ccb65fb9e01 1581268 libglib2.0-udeb_2.21.6-1_amd64.udeb
d8b0b3f314a8d659453385cd386e550791b11900 1192388 libglib2.0-dev_2.21.6-1_amd64.deb
c691f00e69d21129d579a9ff3ecf92d953091b5a 1446558 libglib2.0-0-dbg_2.21.6-1_amd64.deb
8e4b8c65f631f861964a9ebd96205262a6ce9d28 414488 libglib2.0-0-refdbg_2.21.6-1_amd64.deb
Checksums-Sha256:
52fa53e02161560a6df05cdc991248d6069687d6066870827a0063163109d033 1673 glib2.0_2.21.6-1.dsc
57c8ca54e756273159b799f613bec1da689e3cb711673ff3e27dde6b145334b8 7779941 glib2.0_2.21.6.orig.tar.gz
9629f2e9baff36ef14fce13207fbcbadc5c8bfaa1e9f8f9cdaf425be5a56a8c1 37059 glib2.0_2.21.6-1.diff.gz
943f73b40bf03b6a57585a5613ccab74b483ee09f44d4231613f23dea703dc7b 864348 libglib2.0-data_2.21.6-1_all.deb
76a80bd7f3177a7d75252c608f27b3d17c9d46c7fad0d89e9b3c6fcff73286ec 1393138 libglib2.0-doc_2.21.6-1_all.deb
2282c1e0a110249336058a1246c52aa821f971a070cc2a4b3ffddcd3a6da8d17 982704 libglib2.0-0_2.21.6-1_amd64.deb
1f798c6131a00ff12a74163deb258d2af220894aee52c3e0529d190ca39644e2 1581268 libglib2.0-udeb_2.21.6-1_amd64.udeb
7a31b14865ebd2592cd67975e4aa820d58f7bbe5a6cfdc8ef4b1390cc6acf82f 1192388 libglib2.0-dev_2.21.6-1_amd64.deb
bcfc73e660cbac000a57f4d021149a756cf77182d353db49185e6107e40d9158 1446558 libglib2.0-0-dbg_2.21.6-1_amd64.deb
b5a4281fc9888d7e148f92b5003d1df5a4bfb253a591f666bfeb05a774b2feb0 414488 libglib2.0-0-refdbg_2.21.6-1_amd64.deb
Files:
e2373a93368aba3626df1fb94e32128d 1673 libs optional glib2.0_2.21.6-1.dsc
a13adaa64ceca3e02aed9ccd08ffd7a0 7779941 libs optional glib2.0_2.21.6.orig.tar.gz
67d26b3c383e7fb87a4d6c6f5f1143b3 37059 libs optional glib2.0_2.21.6-1.diff.gz
7c27ae4a43b65bcddff0b55ab84b985c 864348 misc optional libglib2.0-data_2.21.6-1_all.deb
d806bb9b4d861218771d2ebed20a4af5 1393138 doc optional libglib2.0-doc_2.21.6-1_all.deb
c6f167472dba3b077323918081348f00 982704 libs optional libglib2.0-0_2.21.6-1_amd64.deb
0017cd2d8642a0dda2535539b954d1e0 1581268 debian-installer optional libglib2.0-udeb_2.21.6-1_amd64.udeb
115acbeb073f9099ba3a546fb79665b8 1192388 libdevel optional libglib2.0-dev_2.21.6-1_amd64.deb
74de11bf7b3a0864c50e12e694d31f8d 1446558 debug extra libglib2.0-0-dbg_2.21.6-1_amd64.deb
9599e057f213ff8c434dc622a5bf39eb 414488 libs optional libglib2.0-0-refdbg_2.21.6-1_amd64.deb
Package-Type: udeb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAkqiBnEACgkQBsBdh1vkHyHRzACeNQJ5wBoqq11dSKbYgXnHEnSU
GMYAn18W8iPLgQOzp5EnC9jfnNVCiTol
=1taQ
-----END PGP SIGNATURE-----
Reply sent
to
Sebastian Dröge <slomo@debian.org>:
You have taken responsibility.
(Sat, 05 Sep 2009 06:57:14 GMT)
Full text and
rfc822 format available.
Notification sent
to
David Sánchez Herrero <david.krusty@gmail.com>:
Bug acknowledged by developer.
(Sat, 05 Sep 2009 06:57:14 GMT)
Full text and
rfc822 format available.
Bug archived.
Request was from
Debbugs Internal Request <owner@bugs.debian.org>
to
internal_control@bugs.debian.org.
(Thu, 08 Oct 2009 07:33:30 GMT)
Full text and
rfc822 format available.
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Tue Feb 9 19:43:43 2010;
Machine Name:
busoni.debian.org
Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.