linux-l: portmap, glibc, svc_getreqset, viele FDs und SIGSEGV (episch)

Oliver Bandel oliver at first.in-berlin.de
Mo Mär 6 18:48:19 CET 2000


Hi!


On Mon, 6 Mar 2000, Oliver Hillmann wrote:

> Hallo,
> 
> mein portmap segfaultet.
> 
> VORGESCHICHTE:
> 
> Ich habe einen Kernel 2.2.13, der von mir entsprechend gepatched und
> neukompiliert wurde, sodaß er die Begrenzung von offenen
> Filedeskriptoren pro Prozeß von 1024 auf 2200 erhöht. (Dazu sind
> entsprechend die Defaultwerte für NR_OPEN in den Dateien
[...]
> DAS PHÄNOMEN
> 
> Wenn ich nun allerdings portmap (Version 4.0.15, neukompiliert aus
> der portmap-4.0.15.src.rpm oder als Binary rpm installiert; Version
> 5beta, ebenfalls als Binary oder aus dem SuSE Source RPM gebaut)
> starte, und ein erster rpcinfo Request trifft auf portmap, dann
> gibts einen Segmentation Fault.
> 
> strace zeigt mir, daß der letzte syscall vor dem SIGSEGV ein accept
> war. gdb informiert mich über den Crash in svc.c:429 in der Funktion
> svc_getreqset. Das ist nun aber nichts, was portmap mitbringt,
> sondern eine Funktion der Glibc.
[...]

Schon mal Deine C-Lib neu kompiliert?

Ich vermute mal so drauf los, daß da irgendwo auch
indirekt auf's NR_OPEN zugegriffen wird (z.B. beim
select()).

Wenn dann da verschiedene Werte einkompiliert sind,
kann man sicherlich schnell auf die Nase fallen.

Wenn Du so grundlegende Dinge wie FD-Anzahl im kernel umbaust,
solltest Du auch am besten Dein ganzes System neu kompilieren.

Das, wie gesagt, mal so drauf los gedünkt...


Tschüß,
    Oliver

-- 
Bill Gatyes is merely a pawn in the U.S. Government's ChessGame.
                                            (Jon Perry in comp.lang.tcl)



Mehr Informationen über die Mailingliste linux-l