[colord] Removal of libsane support
Richard Hughes
hughsient at gmail.com
Mon Sep 17 03:26:34 PDT 2012
On 12 September 2012 06:32, Christopher James Halse Rogers
<christopher.halse.rogers at canonical.com> wrote:
> It goes something like this:
> *) libdbus is threadsafe iff dbus_threads_init_default() is called.
> *) GDBus is threadsafely implemented on top of libdbus, but does not
> require libdbus to be threadsafe, nor does it call
> dbus_threads_init_default()
> *) colord-sane uses GDBus, which is fine.
> *) colord-sane also uses libsane.
> +) Which links to libavahi
> -) Which uses libdbus directly, and spawns threads.
That sounds sane, if you pardon the pun.
> Fixing this should be as simple as calling dbus_threads_init_default
> early in colord-sane's main(). Should be, because I can't reproduce
> these crashes myself, so I can't test. We see lots of colord 0.1.16
> crashes here in Ubuntu 12.04, though, and I'm going to upload a colord
> that calls dbus_threads_init_default() to precise-proposed² and see if
> these crashes go away.
Good idea.
> Since removing sane support drops support for non-directly-attached
> scanners (like my HP all-in-one), and I think this is the cause of the
> (at least the) top 15 colord crashes in 12.04 in the past year¹, it
> might be worth seeing if this significantly improves colord-sane's crash
> rate, and then reinstate it.
Yes, If that works I'll add the libsane interface code (and the
separate executable) back. At the moment the sane support is just
causing too much negative press for colord in the way of crashes and
selinux problems.
Richard.
More information about the colord
mailing list