#885879 gvfs-backends: Issues after connecting Android 7.1 device

Package:
gvfs-backends
Source:
gvfs
Description:
userspace virtual filesystem - backends
Submitter:
Michel Le Bihan
Date:
2017-12-30 22:27:04 UTC
Severity:
important
#885879#5
Date:
2017-12-30 20:23:52 UTC
From:
To:
After connecting my device, nautilus shows my device in the sidebar, but after
I select it, nothing happens.

Relevant part from my dmesg:
```
[416043.270975] usb 3-1: new high-speed USB device number 44 using xhci_hcd
[416043.420388] usb 3-1: New USB device found, idVendor=04e8, idProduct=6860
[416043.420391] usb 3-1: New USB device strings: Mfr=1, Product=2,
SerialNumber=3
[416043.420392] usb 3-1: Product: SAMSUNG_Android
[416043.420393] usb 3-1: Manufacturer: SAMSUNG
[416043.420393] usb 3-1: SerialNumber: 2826a426
[416044.255467] usb 3-1: USB disconnect, device number 44
[416044.259019] gvfsd-mtp[29495]: segfault at 18 ip 00007f7f74873ae9 sp
00007ffc7a343920 error 4 in libgvfsdaemon.so[7f7f74866000+25000]
```

#885879#10
Date:
2017-12-30 22:22:04 UTC
From:
To:
gvfs-backends or (more likely) the kernel, and one is probably in
gvfs-backends.

First bug: your device disconnects (or the kernel thinks it did) and
becomes unavailable.

Second bug: when your device disconnects, gvfsd-mtp should have either
continued to run or exited gracefully, but instead it crashes.

For the first bug, are you able to try an older kernel? Given your other
bug report about a phone, perhaps this might be a regression since
Linux 4.13?

For the second bug, obviously you won't be able to reproduce the crash
unless you're running a kernel where the first bug is reproducible. We
can't solve a crash like this without a backtrace. Because you're
using systemd, one very convenient way to get more information
is to install the systemd-coredump and gdb packages, and make the
crash happen again. Also install the -dbgsym packages for libglib2.0,
gvfs-backends, and any other libraries that seem relevant (please see
<https://wiki.debian.org/HowToGetABacktrace> for more details).

Then you'll be able to use the command "coredumpctl" to list crash dumps,
and "coredumpctl gdb" to load the most recent crash dump into gdb, or
a command like "coredumpctl gdb 12345" to load an older crash dump with
process ID 12345.

To get a backtrace in gdb, use the commands "set pagination
off" and "thread apply all bt" at the (gdb) prompt: see
<https://wiki.debian.org/HowToGetABacktrace> for more details.

Regards,
    smcv