Indeed, so as libumockdev isn't thread safe, it becomes utterly confused
by several threads interacting with it at once:
[pid 27529] open("/tmp/umockdev.ZMUMIX/sys/devices/card2/subsystem", O_RDONLY
<unfinished ...>
[pid 27574] write(2, "reading /sys/devices/card2/uevent\n", 34reading
/sys/devices/card2/uevent
<unfinished ...>
[pid 27529] <... open resumed> ) = 11
[pid 27574] <... write resumed> ) = 34
[pid 27529] fstat(11, <unfinished ...>
[pid 27574] write(2, "testbed wrapped fopen(/sys/devices/card2/uevent) ->
/tmp/umockdev.ZMUMIX/sys/devices/card2/uevent\n", 98testbed wrapped
fopen(/sys/devices/card2/uevent) ->
/tmp/umockdev.ZMUMIX/sys/devices/card2/uevent
<unfinished ...>
[pid 27529] <... fstat resumed> {st_dev=makedev(0, 21), st_ino=1776459,
st_mode=S_IFDIR|0755, st_nlink=2, st_uid=1000, st_gid=1000, st_blksize=4096,
st_blocks=0, st_size=120, st_atime=2014/07/04-16:25:05,
st_mtime=2014/07/04-16:25:05, st_ctime=2014/07/04-16:25:05}) = 0
[pid 27574] <... write resumed> ) = 98
[pid 27529] mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0 <unfinished ...>
[pid 27574] open("/tmp/umockdev.ZMUMIX/sys/devices/card2/uevent", O_RDONLY
<unfinished ...>
[pid 27529] <... mmap resumed> ) = 0x7f8518d4f000
[pid 27574] <... open resumed> ) = 12
[pid 27529] read(11, <unfinished ...>
[pid 27574] fstat(12, <unfinished ...>
[pid 27529] <... read resumed> 0x7f8518d4f000, 4096) = -1 EISDIR (Is a
directory)
I. e. while one thread is handling the /sys/devices/card2/subsystem
symlink, the other tries to read /sys/devices/card2/uevent, and they
collide as the umockdev-preload's path resolution (and probably other
things) are not thread safe.
** Summary changed:
- Intermittent
mir_unit_tests.MesaDisplayTest.drm_device_change_event_triggers_handler test
failure: device DEVTYPE is sometimes NULL
+ Intermittent
mir_unit_tests.MesaDisplayTest.drm_device_change_event_triggers_handler test
failure: libumockdev isn't thread safe
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1336671
Title:
Intermittent
mir_unit_tests.MesaDisplayTest.drm_device_change_event_triggers_handler
test failure: libumockdev isn't thread safe
To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1336671/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs