Bug#597133: gvfsd-dav crashes, resulting in "Message did not receive a reply"

Simon McVittie smcv at debian.org
Thu Mar 13 10:19:04 UTC 2014


retitle 597133 gvfsd-dav crashes, resulting in "Message did not receive a reply"
thanks

On 13/03/14 08:55, Fabian Greffrath wrote:
> The error message appears instantly:
> 
> $ time gvfs-mount dav+sd://localhost:60325
> Error mounting location: Message did not receive a reply (timeout by
> message bus)
> 
> real    0m0.028s
> user    0m0.008s
> sys     0m0.000s

This means that whatever service the reply was expected from (probably
gvfsd-dav?) disconnected from D-Bus without replying. The dbus-daemon's
reasoning is that it can't possibly reply now, so it behaves as though
it had timed out immediately, rather than waiting for the timeout
period to elapse. In practice, that probably means the service crashed.

The error message is misleading; it's a relic of earlier D-Bus versions
where the dbus-daemon would enforce a maximum timeout on method calls.
It can still be configured to enforce a maximum timeout, but the
default is now "wait forever" - resource usage is limited by other
mechanisms, so the arbitrary timeout had no benefit, only costs. I've
opened <https://bugs.freedesktop.org/show_bug.cgi?id=76112> upstream.

It might be helpful to rename gvfsd-dav to gvfsd-dav.real and replace
it with a script something like this:

#!/bin/sh
exec > $HOME/gvfsd-dav-$$.log
exec 2>&1
exec gdb -return-child-result -batch -ex run \
  -ex 'thread apply all bt full' -ex kill -ex quit \
  --args /usr/lib/gvfs/gvfsd-dav.real "$@"

Alternatively, capturing core dumps via corekeeper or equivalent might
be helpful.

(People who know more about gvfs, please feel free to suggest how to
start gvfsd-dav under gdb manually - I was hoping it was just D-Bus
service activation, in which case running it from a terminal would be
enough, but that doesn't seem to be the case.)

    S



More information about the pkg-gnome-maintainers mailing list