SuSE 9.1 und ax25d - logout Problem
Moin, nachdem ich ein Update auf SuSE 9.1 vorgenommen habe, stelle ich jetzt etwas komisches beim ax25d (Version 0.0.8) fest. Loggt sich jemand über die AX25-Schnittstelle in das System ein, dann kann er zunächst gut arbeiten (nachdem ich in /usr/share/terminfo einen Link dump --> dumb angelegt habe). Will derjenige dann die Sitzung beenden (mit exit), dann kommen ununterbrochen Meldungen. Der Benutzer wird natürlich disconnecten, der Login-Prozess bleibt aber bestehen und macht volle CPU-Last. Für den User sieht das so aus: dl8ock@db0smg dl8.../dl8ock> exit exit logout login: waitpid (8915, NULL, 0) failed: No child processes login: waitpid (8915, NULL, 0) failed: No child processes login: waitpid (8915, NULL, 0) failed: No child processes login: waitpid (8915, NULL, 0) failed: No child processes login: waitpid (8915, NULL, 0) failed: No child processes Für den Operator so: ps aux | grep login root 14789 33.9 0.2 2132 1028 ? Rs Aug17 260:49 login -- do4ukw root 27120 32.3 0.2 2132 1028 ? Rs Aug17 233:33 login -- dl1nt So wird der Load natürich schön weiter erhöht. Hier weiß ich nicht weiter. Kann mir mal jemand einen Tipp geben, wo ich suchen kann und welche Einstellungen nötig sind? Achso: ax25d.conf # /etc/ax25/ax25d.conf [DB0SMG-10 via pr ] NOCALL * * * * * * L default * * * * * * - root /usr/sbin/axspawn axspawn -w Vielen Dank schon mal im Voraus für die Hinweise, vy 73, Olli dl8ock
Oliver Grellert schrieb:
Loggt sich jemand über die AX25-Schnittstelle in das System ein, dann kann er zunächst gut arbeiten (nachdem ich in /usr/share/terminfo einen Link dump --> dumb angelegt habe). Will derjenige dann die Sitzung beenden (mit exit), dann kommen ununterbrochen Meldungen. Der Benutzer wird natürlich disconnecten, der Login-Prozess bleibt aber bestehen und macht volle CPU-Last.
Für den User sieht das so aus: dl8ock@db0smg dl8.../dl8ock> exit exit
logout login: waitpid (8915, NULL, 0) failed: No child processes login: waitpid (8915, NULL, 0) failed: No child processes login: waitpid (8915, NULL, 0) failed: No child processes login: waitpid (8915, NULL, 0) failed: No child processes login: waitpid (8915, NULL, 0) failed: No child processes
Da gibts für dich nichts einzustellen. Dieser Fehler ist bekannt. Hier hilft nur axspawn zu patchen... Hier was dazu aus dem PR-Netz: --------------Schnipp ------------------------------------- DL1GLH > UNIX 19.05.04 16:40l 72 Lines 1780 Bytes #269 (360) @EU BID : HXYLZQ_DB0CZ Read: DK2ZO DJ8KI DK4TU Subj: SuSE 9.1 & AX.25 Probleme gelöst Path: DB0RBS<DB0FSG<HB9EAS<DB0CZ Sent: 040519/1152z @:DB0CZ.#BW.DEU.EU [Brigachtal,JN48FA] DP6.00 $:HXYLZQ_DB0CZ From: DL1GLH @ DB0CZ.#BW.DEU.EU (Hardy) To: UNIX @ EU X-Info: Upload without password authentication Hallo Linux-Freunde! Ich habe jetzt den Quelltext von "axspawn" aus den ax25-tools-0.0.8 untersucht und einige Fehler behoben. Die "racing condition" von /bin/login sobald die bash beendet wird ist behoben. Ich habe SIG_CHLD wieder auf SIG_DFL gesetzt. Wenn man sich via ax25d,axspawn,login,bash ans Linux-System angemeldet hat sind die ausgegeben Zeilen bei Kernel 2.4.x teilweise und bei Kernel 2.6.x überwiegend verlohren gegangen. Dieser Fehler ist behoben. Die Verbesserung ist wieder wie die original ax25-tools-0.0.8 als "quick hack" zu verstehen. Diese funktionieren bei SuSE 9.1 aber einwandfrei. Viel Spass. Vy 73, Hardy Hier die diff-datei als Anhang: 107a108,109
/* Solved problems with lost output (kernel 2.6.x) and running condition of /bin/login at closing connection - Hardy, dl1glh */ 126a129 #include <time.h> 199a203,204 char *freep; int status; 205a211,212 freep = p;
217,218c224,239 < if (m) < write(1, p, m); ---
if (m) { while( m >= AX_PACLEN) { //SOCK_SEQPACKET !!! do { status = write(1, p, AX_PACLEN); if( status >= 0) { m -= AX_PACLEN; p += AX_PACLEN; } } while( status < 0); } if(m) { do { status = write(1, p, m); } while( status < 0); } }
220c241 < free(p); ---
free(freep);
792a814,816
fcntl(1, F_SETFL, 0); signal( SIGCHLD, SIG_DFL); //Solved running condition with
/bin/login at logout ------------------Schnapp--------------------------------------------- Vielleicht wird das ja mal endlich offiziell gefixt. 73 de Dieter [DK4TU] -- * Linux ist nicht das bessere Windows. * LaTeX ist nicht das bessere Word.
On Wed, Aug 18, 2004 at 09:04:47PM +0200, Dieter Deiss wrote:
login: waitpid (8915, NULL, 0) failed: No child processes
Hoppla, da bekommt "login" kein SIGCHLD, das muss ich mir mal ansehen.
Da gibts für dich nichts einzustellen. Dieser Fehler ist bekannt..
Ich bin mir nicht sicher, ob ich da ueberhaupt einen Bericht drueber bekommen habe (ich kann mich zumindest nicht dran erinnern.) Ich werde mir das sobald ich Zeit dafuer habe mal genauer ansehen. Solche Fehler bitte bei http://www.suse.de/feedback einkippen, dann landet das auch beim Package Maintainer (in diesem Fall sogar direkt beim Autor) und es geht nicht verloren. 73, -- Joerg Reuter DL1BKE http://yaina.de/jreuter And I make my way to where the warm scent of soil fills the evening air. Everything is waiting quietly out there.... (Anne Clark)
participants (3)
-
Dieter Deiss
-
Joerg Reuter
-
Oliver Grellert