Public bug reported:

After the Debian sync that update libqmi from 1.16.2-1 to 1.18.0-1, the
package FTBFS due to a new step in the test setup for the test-generated
suite.

>From the buildlogs:

TEST: test-generated... (pid=17634)
  /libqmi-glib/generated/core:                                         
(/<<PKGBUILDDIR>>/src/libqmi-glib/test/.libs/test-generated:17634): 
GLib-CRITICAL **: g_file_test: assertion 'filename != NULL' failed
FAIL


Backtrace:
#0  0x00007ffff7113ff1 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007ffff71152ed in g_logv () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff711544f in g_log () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff70fa42a in g_file_test () at 
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007ffff7a1ca03 in __qmi_utils_get_driver (cdc_wdm_path=<optimized out>)
    at qmi-utils.c:746
#5  0x00007ffff7a21be7 in device_open_context_step (ctx=0x55555576b0f0) at 
qmi-device.c:2157
#6  0x0000555555557b5e in test_fixture_setup (fixture=0x55555576ba00) at 
test-fixture.c:156
#7  0x00007ffff71352c5 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8  0x00007ffff713549f in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007ffff713549f in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007ffff71356ae in g_test_run_suite () at 
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007ffff71356d1 in g_test_run () at 
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#12 0x0000555555557352 in main (argc=<optimized out>, argv=<optimized out>)
    at test-generated.c:665

strace:
lstat("/sys", {st_dev=makedev(0, 18), st_ino=1, st_mode=S_IFDIR|0555, 
st_nlink=13, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=0, 
st_atime=2017-06-21T16:17:32+0000.691480392, 
st_mtime=2017-06-19T06:48:49+0000.504000019, 
st_ctime=2017-06-19T06:48:49+0000.504000019}) = 0
lstat("/sys/class", {st_dev=makedev(0, 18), st_ino=10, st_mode=S_IFDIR|0755, 
st_nlink=73, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=0, 
st_atime=2017-06-21T15:46:45+0000.176007545, 
st_mtime=2017-06-19T06:48:49+0000.532000158, 
st_ctime=2017-06-19T06:48:49+0000.532000158}) = 0
lstat("/sys/class/usbmisc", {st_dev=makedev(0, 18), st_ino=107497, 
st_mode=S_IFDIR|0755, st_nlink=2, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=0, st_size=0, st_atime=2017-06-21T15:46:45+0000.200007699, 
st_mtime=2017-06-21T15:46:45+0000.196007673, 
st_ctime=2017-06-21T15:46:45+0000.196007673}) = 0
lstat("/sys/class/usbmisc/qmi000314190000", 0x7ffc6fc9ec20) = -1 ENOENT (No 
such file or directory)
getpeername(2, 0x7ffc6fc9e800, [128])   = -1 ENOTSOCK (Socket operation on 
non-socket)
futex(0x7f2423d66e28, FUTEX_WAKE_PRIVATE, 2147483647) = 0
ioctl(2, TCGETS, {c_iflags=0x4500, c_oflags=0x5, c_cflags=0xbf, 
c_lflags=0x8a3b, c_line=0, 
c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"})
 = 0
brk(0x5567ac071000)                     = 0x5567ac071000
brk(0x5567ac069000)                     = 0x5567ac069000
write(2, 
"\n(/build/libqmi-cr4ivg/libqmi-1.18.0/src/libqmi-glib/test/.libs/test-generated:31419):
 GLib-\33[1;35mCRITICAL\33[0m **: g_file_test: assertion 'filename != NULL' 
failed\n", 165) = 165
--- SIGTRAP {si_signo=SIGTRAP, si_code=SI_KERNEL} ---
+++ killed by SIGTRAP (core dumped) +++


The following (snipped) patch introduced the new test that is now
failing:

--- libqmi-1.16.2/src/libqmi-glib/qmi-utils.c   2016-07-13 07:27:23.000000000 
-0700
+++ libqmi-1.18.0/src/libqmi-glib/qmi-utils.c   2017-03-21 06:26:54.000000000 
-0700
@@ -1078,27 +720,49 @@
 
 /*****************************************************************************/
 
+gchar *
+__qmi_utils_get_driver (const gchar *cdc_wdm_path)
+{
+    static const gchar *subsystems[] = { "usbmisc", "usb" };
+    guint i;
+    gchar *device_basename;
+    gchar *driver = NULL;
+
+    device_basename = g_path_get_basename (cdc_wdm_path);
+
+    for (i = 0; !driver && i < G_N_ELEMENTS (subsystems); i++) {
+        gchar *tmp;
+        gchar *path;
+
+        /* driver sysfs can be built directly using subsystem and name; e.g. 
for subsystem
+         * usbmisc and name cdc-wdm0:
+         *    $ realpath /sys/class/usbmisc/cdc-wdm0/device/driver
+         *    /sys/bus/usb/drivers/qmi_wwan
+         */
+        tmp = g_strdup_printf ("/sys/class/%s/%s/device/driver", 
subsystems[i], device_basename);
+        path = canonicalize_file_name (tmp);
+        g_free (tmp);
+
+        if (g_file_test (path, G_FILE_TEST_EXISTS))
+            driver = g_path_get_basename (path);
+        g_free (path);
+    }
+
+    g_free (device_basename);
+
+    return driver;
+}
+
+/*****************************************************************************/

--- libqmi-1.16.2/src/libqmi-glib/qmi-device.c  2016-11-07 01:58:29.000000000 
-0800
+++ libqmi-1.18.0/src/libqmi-glib/qmi-device.c  2017-03-21 06:26:54.000000000 
-0700
@@ -2285,6 +2153,60 @@
         ctx->step++;
         /* Fall down */
 
+    case DEVICE_OPEN_CONTEXT_STEP_DRIVER:
+        ctx->driver = __qmi_utils_get_driver (ctx->self->priv->path);
+        if (ctx->driver)
+            g_debug ("[%s] loaded driver of cdc-wdm port: %s", 
ctx->self->priv->path_display
, ctx->driver);
+        else if (!ctx->self->priv->no_file_check)
+            g_warning ("[%s] couldn't load driver of cdc-wdm port", 
ctx->self->priv->path_di
splay);


For some reason the device is not being created (or found) at the
expected path. Buildlogs from Debian indicates that the tests were run
and all passed.

** Affects: libqmi (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1699599

Title:
  [FTBFS] libqmi 1.18.0-1 fails test during build time

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libqmi/+bug/1699599/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to