Re: [suse-sles-e] is mt a bit broken on SLES10?

From: Heiko Helmle (heiko.helmle_at_head.de)
Date: Thu Nov 23 2006 - 11:25:38 CET


Message-ID: <45657722.9000501@head.de>
Date: Thu, 23 Nov 2006 11:25:38 +0100
From: Heiko Helmle <heiko.helmle@head.de>
Subject: Re: [suse-sles-e] is mt a bit broken on SLES10?

Marcus Meissner wrote:

>>
>> Did anybody else stumble on this or is this a problem local to my
>> test-installation?
>
> Can you check what it does with strace?
>

Sure - and it grew even stranger... apparently I can turn compression
_on_ only with mt 2.6 and _off_ only with mt 2.5... ^^

mt 2.6 always turns compression on regardless of parameter (except _no_
paramater/read only)
mt 2.5 can only turn compression off with 'datcompression 0'

here's an strace of 2.6 failing to turn off datcompression:

~ # strace mt -f /dev/nst0 datcompression 0
execve("/usr/bin/mt", ["mt", "-f", "/dev/nst0", "datcompression", "0"],
[/* 56 vars */]) = 0
brk(0) = 0x8050000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7fb2000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=33382, ...}) = 0
mmap2(NULL, 33382, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fa9000
close(3) = 0
open("/lib/libnsl.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`5\0\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=87850, ...}) = 0
mmap2(NULL, 83712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0xb7f94000
madvise(0xb7f94000, 83712, MADV_SEQUENTIAL|0x1) = 0
mmap2(0xb7fa5000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10) = 0xb7fa5000
mmap2(0xb7fa7000, 5888, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fa7000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300Y\1"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1408371, ...}) = 0
mmap2(NULL, 1181084, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7e73000
madvise(0xb7e73000, 1181084, MADV_SEQUENTIAL|0x1) = 0
mmap2(0xb7f8d000, 16384, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x119) = 0xb7f8d000
mmap2(0xb7f91000, 9628, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f91000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7e72000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e726b0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1}) = 0
mprotect(0xb7f8d000, 8192, PROT_READ) = 0
munmap(0xb7fa9000, 33382) = 0
brk(0) = 0x8050000
brk(0x8071000) = 0x8071000
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = -1 ENOENT
(No such file or directory)
open("/usr/share/locale/locale.alias", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2528, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7fb1000
read(3, "# Locale name alias data base.\n#"..., 4096) = 2528
read(3, "", 4096) = 0
close(3) = 0
munmap(0xb7fb1000, 4096) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_CTYPE", O_RDONLY) = -1 ENOENT (No
such file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_CTYPE", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=238624, ...}) = 0
mmap2(NULL, 238624, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7e37000
close(3) = 0
open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=25404, ...}) = 0
mmap2(NULL, 25404, PROT_READ, MAP_SHARED, 3, 0) = 0xb7fab000
close(3) = 0
open("/dev/nst0", O_WRONLY|O_NONBLOCK|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFCHR|0660, st_rdev=makedev(9, 128), ...}) = 0
ioctl(3, FIBMAP, 0xbfd45382) = 0
ioctl(3, FIBMAP, 0xbfd45382) = 0
ioctl(3, FIBMAP, 0xbfd4537c) = 0
ioctl(3, FIBMAP, 0xbfd45382) = 0
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7faa000
write(1, "Compression on.\n", 16Compression on.
) = 16
close(3) = 0
exit_group(0) = ?
Process 6900 detached

and the strace of mt 2.5 succeeding with this looks pretty similar:
~ # strace ./mt -f /dev/nst0 datcompression 0
execve("./mt", ["./mt", "-f", "/dev/nst0", "datcompression", "0"], [/*
56 vars */]) = 0
brk(0) = 0x804d000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7fc8000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=33382, ...}) = 0
mmap2(NULL, 33382, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fbf000
close(3) = 0
open("/lib/libnsl.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`5\0\000"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=87850, ...}) = 0
mmap2(NULL, 83712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0)
= 0xb7faa000
madvise(0xb7faa000, 83712, MADV_SEQUENTIAL|0x1) = 0
mmap2(0xb7fbb000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10) = 0xb7fbb000
mmap2(0xb7fbd000, 5888, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fbd000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300Y\1"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1408371, ...}) = 0
mmap2(NULL, 1181084, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7e89000
madvise(0xb7e89000, 1181084, MADV_SEQUENTIAL|0x1) = 0
mmap2(0xb7fa3000, 16384, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x119) = 0xb7fa3000
mmap2(0xb7fa7000, 9628, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fa7000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7e88000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e886b0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1}) = 0
mprotect(0xb7fa3000, 8192, PROT_READ) = 0
munmap(0xb7fbf000, 33382) = 0
open("/dev/nst0", O_WRONLY|O_NONBLOCK|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFCHR|0660, st_rdev=makedev(9, 128), ...}) = 0
ioctl(3, FIBMAP, 0xbfb21ea0) = 0
ioctl(3, FIBMAP, 0xbfb21ea0) = 0
ioctl(3, FIBMAP, 0xbfb21ea0) = 0
ioctl(3, FIBMAP, 0xbfb21ea0) = 0
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7fc7000
write(1, "Compression off.\n", 17Compression off.
) = 17
close(3) = 0
exit_group(0) = ?
Process 8177 detached

Regards
        Heiko Helmle

---------------------------------------------------------------------
To unsubscribe, e-mail: suse-sles-e-unsubscribe@suse.com
For additional commands, e-mail: suse-sles-e-help@suse.com



This archive was generated by hypermail 2.1.7 : Thu Nov 23 2006 - 13:29:36 CET