7170 rebootet während der Einrichtung

hermann72pb

IPPF-Promi
Mitglied seit
6 Nov 2005
Beiträge
3,727
Punkte für Reaktionen
16
Punkte
38
Ich hatte eben eine 7170 (UI) mit dem trunk 1716 geflasht und hatte angefangen sie offline einzurichten. Die ds-mod-Einstellungen hatte ich von der alten 7050 übernommen und danach die Box "werkresetet" um mit der AVM-spezifischen Einrichtung anzufangen.

Im Image sind SSL-Libs für OpenVPN drin, busybox ist 1.9.0. tr069 ist nach dem Werkreset auf "no" gesetzt.

Während der Einrichtung ist mir die Box mindestens 3-4 Mal reproduzierbar abgestürtzt. Es passiert, wenn man die "Einstellungen übernehmen" in irgendeiner Maske von AVM-WEBIF anklickt. Da ich die Box von vorne an mit allen Daten neu "verspeist" hatte, müsste ich schon relativ oft auf "übernehmen" drücken. Es ensteht so ein Eindruck, dass die Box eine bestimmte Anzahl (4-7) "übernehmen" verträgt und danach abschmiert.

Das "Abschmieren" geschieht auch relativ seltsam. Zunächst wird die Box für etwa 30 sec. nicht erreichbar, LEDs leuchten wie vorher. Die Box ist während dieser phase weder per SSH noch per WEBIF (AVM und MOD) erreichbar und ich glaube auch nicht pingbar (da bin ich mir aber nicht sicher).

Nach diesen 30 sec. bootet die Box neu. Alle Einstellungen, bis auf die letzte sind korrekt abgespeichert. Die letzte Einstellung, für die man "übernehmen" geklickt hat ist nicht abgespeichert.

Da ich keine serielle Konsole habe, kann ich nicht genau sagen, was die Box während des "Aufhängens" macht. Meine Fragen:
1. Hat jemand sowas schon beobachtet?
2. Kann es jemand versuchen zu reproduzieren?
3. Kann es sein, dass es an BusyBox 1.9.0 oder an SSL-Libs liegt?
4. Ist es vielleicht Bug der Original-Firm?

MfG
 
Hallo,

Das "Abschmieren" geschieht auch relativ seltsam. Zunächst wird die Box für etwa 30 sec. nicht erreichbar, LEDs leuchten wie vorher. Die Box ist während dieser phase weder per SSH noch per WEBIF (AVM und MOD) erreichbar
Und dann schlägt der Watchdog zu.

Ein ganz ähnliches Verhalten hatte ich mal mit einer Freetz Test-Firmware für meine 7270 (die Beta Firmware vor der offiziellen 04.52). In einigen Fällen passiert es schon unmittelbar nach dem Eingeben des Passwortes, manchmal erst nach dem "Übernehmen" einer Einstellung.

Die Besonderheit in dem Image war, dass ich die Hilfe, die Assistenten und die Kindersicherung rausgepatcht habe.
Da auch andere Sachen nicht so funktionierten, wie gedacht (vpnc), ist das Image relativ schnell wieder runtergeflogen, der Nachfolger (ohne irgendwelche Sachen rauszupatchen) zeigte das Verhalten nicht, so dass ich der Sache nicht näher auf den Grund gegangen bin. Ich hab momentan OpenVPN, Dropbear und dnsmasq drin. Das ist stabil.
 
aha, da kommen wir schon der Sache näher. Ich hatte auch Hilfe, Assistenten und Kindersicherung rausgepatcht. Dieses Verhalten ist mir aber noch nicht aufgefallen, weil alle anderen Boxen schon eingerichtet sind.

MfG
 
Assistenten und die Kindersicherung sind bei mir auch draussen. Die Einstellungen vom ds 15.2 habe ich übernommen. Bein Konfigurieren der neuen Bestandteile von .49 hat meine Box auch mehrfach rebootet. Da könnte also was dran sein.
Aufgefallen ist mir auch, dass seit freetz immer eine rote LED in der Box leuchtet, welche bei "info" sichtbar ist und bei "wlan" schwächer. Bei mir leuchtet normalerweise nur die grüne Power-Led.
EDIT: Hab gerad unter "Bekannte Netzwrkgeräte" den Namen zu einer IP geändert. Beim speichern war die Box dann auch weg (SSH, DNS, WevUIs). Interessanterweise funktionierte früher gestratete FTP-Übertragung aus dem Internet auf einen PC noch
 
Zuletzt bearbeitet:
Nachdem jetzt schon mehrere davon berichtet haben ist da bestimmt was dran. Aber ich bräuchte schon einen Anhaltspunkt in welcher Richtung ich suchen soll.

MfG Oliver
 
Meine FBF 7270 rebootet neuer Dings auch. Ich habe aber inzwischen die Kindersicherung,Hilfe und Assistenten wieder angeschaltet. Es geht aber trotzdem nicht weg.

Von der seriellen Konsole bekomme ich folgendes:
Code:
telefon[588]: [Segmentation fault]
telefon[588]: crashed at 2ae5ce80 (/usr/share/telefon/libfoncontrol.so.1.0.0: foncontrol_tam_send_config + 0x10) accessing 0x53370
telefon[588]: a0: 2afee000, a1: 2aab12e0, a2: 00000000, a3: 00000000
AVM_WATCHDOG_ungraceful_release: handle 4 (telefon) still registered!

Dann schlägt nach 5 Sekunden der Watchdog zu.
 
Hm, das steht so im Log? Wann kommt das?
Ist die Datei libfoncontrol da? Was sind noch für Dateien in dem Verzeichnis?

MfG Oliver
 
Die Fehlermeldung tritt schon während des Hochfahrens auf. Kurz bevor die Box fertig gebootet hat.
In den Logfiles steht es aber nicht, sondern auf der seriellen Konsole.

Im Verzeichnis sind noch:
Code:
/var/mod/root # ls -l /usr/share/telefon/
-rwxr-xr-x    1 root     root         6928 Feb  7  2008 fax.html
-rwxr-xr-x    1 root     root          205 Feb  7  2008 fax.txt
lrwxrwxrwx    1 root     root           22 Feb 10  2008 libfoncontrol.so -> libfoncontrol.so.1.0.0
lrwxrwxrwx    1 root     root           22 Feb 10  2008 libfoncontrol.so.1 -> libfoncontrol.so.1.0.0
-rwxr-xr-x    1 root     root        83100 Feb  7  2008 libfoncontrol.so.1.0.0
lrwxrwxrwx    1 root     root           15 Feb 10  2008 libtam.so -> libtam.so.1.0.0
lrwxrwxrwx    1 root     root           15 Feb 10  2008 libtam.so.1 -> libtam.so.1.0.0
-rwxr-xr-x    1 root     root       127072 Feb  7  2008 libtam.so.1.0.0
-rwxr-xr-x    1 root     root         7333 Feb  7  2008 tam.html
-rwxr-xr-x    1 root     root          420 Feb  7  2008 tam.txt
 
Kommst du dazu was einzutippen?
Code:
echo disable > /dev/watchdog
strace -f /usr/bin/telefon
Vielleicht fehlt da wieder ein Device?

MfG Oliver
 
Hier ist mein Log von der seriellen Konsole (Anhang).

Dabei sind mir noch die Zeilen

Code:
ctlmgr[437]: FactoryDefault=/etc/default/avm/stat.cfg (stat)
ctlmgr[437]: /etc/default/avm/stat.cfg: is empty
ctlmgr[437]: load_config(stat): file empty - factory default loaded
ctlmgr[437]: Statistic load_config failed
ctlmgr[437]: sipextra my_init
ctlmgr[437]: capiotcp My_Init
ctlmgr[437]: 01:00:30(1) [Segmentation fault] ctlmgr(437) CRASHED at _DYNAMIC_LINKING+0x4fcf (ctlmgr at 00004fd0) accessing (null)
ctlmgr[437]: ze: 00000000 at: 1000ce01 v0: 2af812f0 v1: 2af812e0
ctlmgr[437]: a0: 00000000 a1: 2b3202a0 a2: ffffffff a3: 00000000
ctlmgr[437]: t0: 00000060 t1: 00000060 t2: 2b320000 t3: 2b316f68
ctlmgr[437]: t4: 00000001 t5: 00000002 t6: 00000000 t7: 635f7267
ctlmgr[437]: s0: 2b3202a0 s1: 2b31e600 s2: 2b139ccc s3: 2af812a0
ctlmgr[437]: s4: 00447820 s5: 00000000 s6: 100000b0 s7: 1000262c
ctlmgr[437]: t8: 00000000 t9: 00004fd0 k0: 00000802 k1: 00000000
ctlmgr[437]: gp: 2b1829b0 sp: 7fdbade8 fp: 00435130 ra: 2b1393b4
ctlmgr[437]: [bt] Number of functions: 4
ctlmgr[437]: [bt] (Mediasrv_Register+0x6b8)+0x20 (/usr/share/ctlmgr/libctlusb.so at 0000438c)
ctlmgr[437]: [bt] (timsgprocessor_do_message+0x85c)+0xe4 (ctlmgr at 0042441c)
ctlmgr[437]: [bt] instantiate_module+0x118 (ctlmgr at 0040c290)
ctlmgr[437]: [bt] main+0xca8 (ctlmgr at 0040ae20)
aufgefallen.
Der Mediaserver ist aber mit installiert.
 

Anhänge

Ich habe mal den letzten Teil vom strace eingefügt:
Code:
socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
bind(3, {sa_family=AF_INET, sin_port=htons(1011), sin_addr=inet_addr("0.0.0.0")}, 16) = 0
fcntl(3, F_GETFL)                       = 0x2 (flags O_RDWR)
fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK)    = 0
getpid()                                = 950
fcntl(3, F_SETOWN, 950)                 = 0
fcntl(3, F_GETFL)                       = 0x82 (flags O_RDWR|O_NONBLOCK)
fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK|O_ASYNC) = 0
fcntl(3, F_SETSIG, 0x16)                = 0
listen(3, 2)                            = 0
rt_sigaction(SIGPIPE, {0x10000000, [], SA_STACK|SA_INTERRUPT|0x2be1e30}, NULL, 16) = 0
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
connect(4, {sa_family=AF_FILE, path="/dev/log"}, 10) = -1 ECONNREFUSED (Connection refused)
--- SIGIO (I/O possible) @ 0 (0) ---
rt_sigreturn(0x100030cc)                = -1 ECONNREFUSED (Connection refused)
close(4)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 4
connect(4, {sa_family=AF_FILE, path="/dev/log"}, 10) = -1 ECONNREFUSED (Connection refused)
close(4)                                = 0
open("/dev/null", O_WRONLY)             = 4
dup2(4, 1)                              = 1
dup2(4, 2)                              = 2
close(4)                                = 0
open("/dev/null", O_RDONLY)             = 4
dup2(4, 0)                              = 0
close(4)                                = 0
gettimeofday({946685060, 440000}, {0, 0}) = 0
clock_gettime(CLOCK_MONOTONIC, {260, 440000000}) = 0
rt_sigaction(SIGPIPE, {SIG_DFL}, {0x10000000, [], SA_STACK|SA_INTERRUPT|0x2be1e30}, 16) = 0
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
connect(4, {sa_family=AF_FILE, path="/dev/log"}, 10) = -1 ECONNREFUSED (Connection refused)
close(4)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 4
connect(4, {sa_family=AF_FILE, path="/dev/log"}, 10) = -1 ECONNREFUSED (Connection refused)
close(4)                                = 0
time([946685060])                       = 946685060
getpid()                                = 950
write(-1, "<11>Jan  1 01:04:20 telefon[950]"..., 70) = -1 EBADF (Bad file descriptor)
open("/dev/console", O_WRONLY)          = 4
write(4, "Jan  1 01:04:20 telefon[950]: us"..., 67Jan  1 01:04:20 telefon[950]: use clock_gettime(CLOCK_MONOTONIC)!
) = 67
close(4)                                = 0
rt_sigaction(SIGPIPE, {0x10000000, [], SA_STACK|SA_INTERRUPT|0x2be1e30}, NULL, 16) = 0
clock_gettime(CLOCK_MONOTONIC, {260, 450000000}) = 0
open("/var/flash/fx_conf", O_RDONLY)    = 4
read(4, "SV\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 20096) = 20096
close(4)                                = 0
open("/var/flash/fx_def", O_RDONLY)     = -1 ENOENT (No such file or directory)
fork(Process 951 attached
)                                  = 951
[pid   950] wait4(951, Process 950 suspended

Mir fällt hier auf:
  • dass die Applikation noch läuft und keine SEGV wirft.
  • write(-1, "<snip>"..., 70) = -1 EBADF (Bad file descriptor)
    Das sollte eigentlich nicht vorkommen. Ich denke mal hier wurde der FD nicht geprüft.
  • open("/var/flash/fx_def", O_RDONLY) = -1 ENOENT (No such file or directory)
 
[Edit frank_m24: Mehrere Beiträge innerhalb weniger Minuten zusammengefasst. Man kann seine Beiträge auch editieren. Lies noch mal die Forumregeln.]
Nach diesem ersten Hinweis und etwas Suche im Forum habe ich festgestellt, dass /var/flash/fx_def fehlt.
Ein einfaches mknod geht nicht, weil das FS RO ist.
Ich werde wohl das Device beim Bauvorgang ins Image erstellen müssen.

Wieso ging der Devicenode verloren?

[Edit frank_m24: Beitrag 2:]
Ich habe jetzt ein Char-Device 240 99 angelegt (ging doch direkt auf der HW).
Leider gibt strace immernoch
Code:
open("/var/flash/fx_def", O_RDONLY)     = -1 ENOENT (No such file or directory)
aus.

Das Device sieht so aus:
Code:
/var/flash # ls -lh /var/flash/fx_def
crw-r--r--    1 root     root     240,  99 Jan  1 01:22 /var/flash/fx_def
/var/flash # cat /var/flash/fx_def
cat: can't open '/var/flash/fx_def': No such file or directory


Wenn ich den igdd wieder mit draufmache scheint alles zu laufen.
Ausprobiert habe ich das, weil der mediasrv anscheinend UPNP benötigt.
Code:
/var/flash # /sbin/mediasrv  &
/var/flash # /sbin/mediasrv: can't load library 'libavmupnp.so.2'

Eigentlich will ich aber weder UPNP noch den mediasrv bei mir drauf haben. Anscheinend brauchen aber telefon und ctrlmgr auch einen Teil vom UPnp.
 
Zuletzt bearbeitet:
Was meinst du warum der "Remove UPNP" Patch für die 7270 deaktiviert wurde? :mad:

Aber du kannst natürlich mal schauen welche Lib denn entfernt werden kann und welche nicht. Wenn du schon dabei bist. Es gibt da ja mehrere UPNP-Libs.

MfG Oliver
 
Das kann ich mal machen. Aber erst morgen.

Ist schon bekannt, ob der igdd laufen muss?
Oder reichen auch nur die Libs?

Mir ist nicht so ganz klar, wie der ctrlmgr und telefon mit UPnP zusammenhängen.

(ldd gibt keine Abhänigkeit aus)
 
Ich meine, dass es an einer der zwei Libraries liegt. Der igdd läuft ja auch nicht, wenn entpsrechende Optionen nicht aktiviert sind.
Code:
/var/mod/root # ldd /usr/share/ctlmgr/libctlusb.so
        libslab.so.2 => not found (0x00000000)
        libcrypt.so.0 => not found (0x00000000)
        libavmupnpbig.so.2 => not found (0x00000000)
        libwebsrv.so.2 => not found (0x00000000)
        libgcc_s.so.1 => not found (0x00000000)
        libc.so.0 => not found (0x00000000)
        not a dynamic executable
MfG Oliver
 
Gibt es einen Tipp, wie ich schnell die Dateien verstecken/wegmoven kann, ohne andauernd neu zu Flashen?
Mir würde jetzt UnionFS einfallen oder das FS auf einen USB-Stick verlegen.
Gibt es etwas einfacheres?
 
In Freetz ist mini_fo, das tuts auch. Ansonsten kannst du mit "mount -o bind ..." überschreiben. Aber nicht anlegen oder löschen.

MfG Oliver
 
Hier ist mein Ergebnis zum Thema libavmupnp.
Ich fürchte es werden beide Libs gebraucht.

Code:
/usr/share/telefon # ls /lib/libavmupnp* -lh
lrwxrwxrwx    1 root     root           19 Feb 11  2008 /lib/libavmupnp.so -> libavmupnp.so.2.0.0
lrwxrwxrwx    1 root     root           19 Feb 11  2008 /lib/libavmupnp.so.2 -> libavmupnp.so.2.0.0
lrwxrwxrwx    1 root     root           22 Feb 11  2008 /lib/libavmupnp.so.2.0.0 -> libavmupnpbig.so.2.0.0
lrwxrwxrwx    1 root     root           22 Feb 11  2008 /lib/libavmupnpapi.so -> libavmupnpapi.so.2.0.0
lrwxrwxrwx    1 root     root           22 Feb 11  2008 /lib/libavmupnpapi.so.2 -> libavmupnpapi.so.2.0.0
-rwxr-xr-x    1 root     root        29.7k Feb  7  2008 /lib/libavmupnpapi.so.2.0.0
lrwxrwxrwx    1 root     root           22 Feb 11  2008 /lib/libavmupnpbig.so -> libavmupnpbig.so.2.0.0
lrwxrwxrwx    1 root     root           22 Feb 11  2008 /lib/libavmupnpbig.so.2 -> libavmupnpbig.so.2.0.0
-rwxr-xr-x    1 root     root       152.7k Feb  7  2008 /lib/libavmupnpbig.so.2.0.0
Code:
/usr/share/telefon # ldd libfoncontrol.so
        libmxml.so.1 => not found (0x00000000)
        libphonebook.so.1 => not found (0x00000000)
        libavmupnpapi.so.2 => not found (0x00000000)
        libgcc_s.so.1 => not found (0x00000000)
        libc.so.0 => not found (0x00000000)
        not a dynamic executable
Code:
/usr/share/ctlmgr # ldd libctlusb.so
        libslab.so.2 => not found (0x00000000)
        libcrypt.so.0 => not found (0x00000000)
        libavmupnpbig.so.2 => not found (0x00000000)
        libwebsrv.so.2 => not found (0x00000000)
        libgcc_s.so.1 => not found (0x00000000)
        libc.so.0 => not found (0x00000000)
        not a dynamic executable

Ohne den igdd läuft es aber trotzdem.
Kann man dafür einen Patch machen, damit man den Patch im Kconfig aktivieren kann aber die libs nicht gelöcht werden?
 
Zuletzt bearbeitet:
Okay. Danke fürs Testen.
Probierst du mal bitte r1823 oder höher.

MfG Oliver
 
Es scheint erstmal zu laufen. (r1824)
 
Zuletzt bearbeitet:
Kostenlos!

Statistik des Forums

Themen
248,918
Beiträge
2,305,050
Mitglieder
378,640
Neuestes Mitglied
vapep43913