On Tue, Mar 20, 2018 at 11:59:28AM +0200, Peter Pentchev wrote: > Unfortunately, this patch is not moving in the right direction. These > tests preload a library that is built as part of the mbuffer build that > intercepts open() and write() calls (among others) and simulates > changing tape devices; basically it splits the mbuffer output into > several files. This is the reason why on amd64 there are many > output-test4.* and output-test5.* files - there should not be a single > output-test4 file, there should be output-test4.000001 and so on files. > So the test failure means that the tapetest.so object is not being > preloaded correctly or that it fails to intercept the necessary libc > calls.
> Sounds like I'll need to spin up a couple of VMs and see what's what. > Thanks again for your work on this and Debian and Ubuntu in general! Ah, ok. Now that I understand the purpose, I can see why it's broken: $ objdump -T /usr/lib/arm-linux-gnueabihf/mbuffer/tapetest.so |grep open 00000780 g DF .text 000000e4 Base open 0001100c g DO .bss 00000004 Base opencount $ objdump -T /usr/bin/mbuffer |grep open 00000000 DF *UND* 00000000 GLIBC_2.4 open64 00000000 DF *UND* 00000000 GLIBC_2.7 __open64_2 $ mbuffer is quite reasonably built with LFS support on all archs, which means that, on 32-bit architectures in particular, the shim for open() does not match the actual function called by mbuffer. So the tapetest shim is broken on these architectures. My patch is definitely the wrong way to fix this, but if 'tapetest' is indeed simply a test library, I don't think I have broken the mbuffer package in Ubuntu by (effectively) skipping this test. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
signature.asc
Description: PGP signature