olistudent
IPPF-Urgestein
- Mitglied seit
- 19 Okt 2004
- Beiträge
- 14,787
- Punkte für Reaktionen
- 13
- Punkte
- 38
Habe ich heute morgen gemacht, und da endet die Ausgabe auch nach dem fork().Gut möglich. Dann wäre es noch interessant, unser strace ohne Replace Kernel auszuprobieren.
Ich habe es genau so aufgerufen, wie von dir vorgeschlagen:Wenn Du strace mit Option -f aufgerufen hast, dann ist schon mal die Frage geklärt, ob die Option -f mit dem original Kernel funktioniert.
strace -fs200 -o /tmp/printserv.txt printserv ...
Ist der Patch immer aktiv wenn ich "replace kernel" auswähle? Im kernel-menuconfig konnte ich auf Anhieb nichts dazu finden.Ich bin mir nicht sicher. Aber das Thema hatten wir schon mal. Zum Einen haben wir auch für 2.6.32 noch den scall-32 Kernel Patch.
root@fritz:/var/mod/root# cat /tmp/printserv.txt
5612 execve("/usr/bin/printserv", ["printserv", "-p", "9100", "-d", "/dev/usblp0"], [/* 228 vars */]) = 0
5612 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0x2aaad000
5612 open("/usr/lib/freetz/libgcc_s.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
5612 open("/mod/lib/libgcc_s.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
5612 open("/lib/libgcc_s.so.1", O_RDONLY) = 3
5612 fstat(3, {st_mode=S_IFREG|0755, st_size=56384, ...}) = 0
5612 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0x2aaae000
5612 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\10\0\1\0\0\0\200\32\0\0004\0\0\0000\330\0\0\7\20\0P4\0 \0\7\0(\0\32\0\31\0\0\0\0p\24\1\0\0\24\1\0\0\24\1\0\0\30\0\0\0\30\0\0\0\4\0\0\0\4\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\300\325\0\0\300\325\0\0\5\0\0\0\0\0\1\0\1\0\0\0\300\325\0\0\300\325\1\0\300\325\1\0\200\1\0\0\220\3\0\0\6\0\0\0\0\0\1\0\2\0\0\0,\1\0\0,\1\0\0,\1\0\0\360\0\0\0\360\0\0\0\7\0\0\0\4\0\0\0P\345tdp\311\0\0p\311\0\0p\311\0\0\254\2\0\0"..., 4096) = 4096
5612 old_mmap(NULL, 122880, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aabe000
5612 old_mmap(0x2aabe000, 54720, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x2aabe000
5612 old_mmap(0x2aadb000, 1856, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xd000) = 0x2aadb000
5612 close(3) = 0
5612 munmap(0x2aaae000, 4096) = 0
5612 open("/usr/lib/freetz/libc.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
5612 open("/mod/lib/libc.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
5612 open("/lib/libc.so.0", O_RDONLY) = 3
5612 fstat(3, {st_mode=S_IFREG|0755, st_size=418588, ...}) = 0
5612 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0x2aaae000
5612 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\10\0\1\0\0\0000\257\0\0004\0\0\0\324_\6\0\7\20\0P4\0 \0\n\0(\0\25\0\24\0\6\0\0\0004\0\0\0004\0\0\0004\0\0\0@\1\0\0@\1\0\0\5\0\0\0\4\0\0\0\3\0\0\0\260K\6\0\260K\6\0\260K\6\0\30\0\0\0\30\0\0\0\4\0\0\0\4\0\0\0\0\0\0pt\1\0\0t\1\0\0t\1\0\0\30\0\0\0\30\0\0\0\4\0\0\0\4\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 L\6\0 L\6\0\5\0\0\0\0\0\1\0\1\0\0\0\224M\6\0\224M\7\0\224M\7\0x\21\0\0"..., 4096) = 4096
5612 old_mmap(NULL, 507904, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aadc000
5612 old_mmap(0x2aadc000, 412704, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x2aadc000
5612 old_mmap(0x2ab50000, 7948, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x64000) = 0x2ab50000
5612 old_mmap(0x2ab52000, 21888, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2ab52000
5612 close(3) = 0
5612 munmap(0x2aaae000, 4096) = 0
5612 open("/mod/lib/libc.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
5612 open("/lib/libc.so.0", O_RDONLY) = 3
5612 fstat(3, {st_mode=S_IFREG|0755, st_size=418588, ...}) = 0
5612 close(3) = 0
5612 stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21528, ...}) = 0
5612 mprotect(0x2ab50000, 4096, PROT_READ) = 0
5612 mprotect(0x2aabc000, 4096, PROT_READ) = 0
5612 ioctl(0, TIOCNXCL, {B38400 opost isig icanon echo ...}) = 0
5612 ioctl(1, TIOCNXCL, {B38400 opost isig icanon echo ...}) = 0
5612 fork() = 5613
5612 exit(0) = ?
5613 setsid() = 5613
5613 socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
5613 setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
5613 bind(3, {sa_family=AF_INET, sin_port=htons(9100), sin_addr=inet_addr("0.0.0.0")}, 16) = -1 EADDRINUSE (Address already in use)
5613 listen(3, 1) = 0
5613 accept(3, root@fritz:/var/mod/root#
12538 execve("/usr/bin/printserv", ["printserv", "-p", "9100", "-d", "/dev/usblp0"], [/* 68 vars */]) = 0
12538 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0x2aaad000
12538 open("/usr/lib/freetz/libgcc_s.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
12538 open("/mod/lib/libgcc_s.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
12538 open("/mod/usr/lib/libgcc_s.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
12538 open("/lib/libgcc_s.so.1", O_RDONLY) = 3
12538 fstat(3, {st_mode=S_IFREG|0755, st_size=56384, ...}) = 0
12538 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0x2aaae000
12538 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\10\0\1\0\0\0\200\32\0\0004\0\0\0000\330\0\0\7\20\0P4\0 \0\7\0(\0\32\0\31\0\0\0\0p\24\1\0\0\24\1\0\0\24\1\0\0\30\0\0\0\30\0\0\0\4\0\0\0\4\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\300\325\0\0\300\325\0\0\5\0\0\0\0\0\1\0\1\0\0\0\300\325\0\0\300\325\1\0\300\325\1\0\200\1\0\0\220\3\0\0\6\0\0\0\0\0\1\0\2\0\0\0,\1\0\0,\1\0\0,\1\0\0\360\0\0\0\360\0\0\0\7\0\0\0\4\0\0\0P\345tdp\311\0\0p\311\0\0p\311\0\0\254\2\0\0"..., 4096) = 4096
12538 old_mmap(NULL, 122880, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aabe000
12538 old_mmap(0x2aabe000, 54720, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x2aabe000
12538 old_mmap(0x2aadb000, 1856, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xd000) = 0x2aadb000
12538 close(3) = 0
12538 munmap(0x2aaae000, 4096) = 0
12538 open("/usr/lib/freetz/libc.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
12538 open("/mod/lib/libc.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
12538 open("/mod/usr/lib/libc.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
12538 open("/lib/libc.so.0", O_RDONLY) = 3
12538 fstat(3, {st_mode=S_IFREG|0755, st_size=418588, ...}) = 0
12538 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|0x4000000, -1, 0) = 0x2aaae000
12538 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\10\0\1\0\0\0000\257\0\0004\0\0\0\324_\6\0\7\20\0P4\0 \0\n\0(\0\25\0\24\0\6\0\0\0004\0\0\0004\0\0\0004\0\0\0@\1\0\0@\1\0\0\5\0\0\0\4\0\0\0\3\0\0\0\260K\6\0\260K\6\0\260K\6\0\30\0\0\0\30\0\0\0\4\0\0\0\4\0\0\0\0\0\0pt\1\0\0t\1\0\0t\1\0\0\30\0\0\0\30\0\0\0\4\0\0\0\4\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 L\6\0 L\6\0\5\0\0\0\0\0\1\0\1\0\0\0\224M\6\0\224M\7\0\224M\7\0x\21\0\0"..., 4096) = 4096
12538 old_mmap(NULL, 507904, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2aadc000
12538 old_mmap(0x2aadc000, 412704, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x2aadc000
12538 old_mmap(0x2ab50000, 7948, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x64000) = 0x2ab50000
12538 old_mmap(0x2ab52000, 21888, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2ab52000
12538 close(3) = 0
12538 munmap(0x2aaae000, 4096) = 0
12538 open("/mod/lib/libc.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
12538 open("/mod/usr/lib/libc.so.0", O_RDONLY) = -1 ENOENT (No such file or directory)
12538 open("/lib/libc.so.0", O_RDONLY) = 3
12538 fstat(3, {st_mode=S_IFREG|0755, st_size=418588, ...}) = 0
12538 close(3) = 0
12538 stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21528, ...}) = 0
12538 mprotect(0x2ab50000, 4096, PROT_READ) = 0
12538 mprotect(0x2aabc000, 4096, PROT_READ) = 0
12538 ioctl(0, TIOCNXCL, 0x7f8f2e08) = -1 ENOTTY (Inappropriate ioctl for device)
12538 ioctl(1, TIOCNXCL, 0x7f8f2e08) = -1 EINVAL (Invalid argument)
12538 close(0) = 0
12538 close(1) = 0
12538 close(2) = 0
12538 open("/dev/null", O_RDWR|O_LARGEFILE) = 0
12538 dup(0) = 1
12538 dup(0) = 2
12538 fork() = 12539
12538 exit(0) = ?
12539 setsid() = 12539
12539 socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
12539 setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
12539 bind(3, {sa_family=AF_INET, sin_port=htons(9100), sin_addr=inet_addr("0.0.0.0")}, 16) = 0
12539 listen(3, 1) = 0
12539 accept(3,
dann ist also Replace Kernel immer noch erforderlich. Gut zu wissen.Beim AVM kernel haben beide strace die gleiche Ausgabe/Verhalten.
Dann ist da auch gelöst.und das WebIF bleibt nicht mehr hängen (ohne strace).