On Tue, Mar 20, 2018 at 02:05:28PM -0700, Steve Langasek wrote: > 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.
Yep, this was my first suspicion; thanks for confirming it! I'll try to come up with a fix soon. > 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. Right, sorry that I forgot to mention this. Yes, if mbuffer passes the other tests, it is highly unlikely that it's broken. G'luck, Peter -- Peter Pentchev r...@ringlet.net r...@freebsd.org p...@storpool.com PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint 2EE7 A7A5 17FC 124C F115 C354 651E EFB0 2527 DF13
signature.asc
Description: PGP signature