Date: Wed, 1 Jan 1997 02:00:02 -0800 (PST) From: Poul-Henning Kamp <phk@critter.dk.tfs.com> To: freebsd-bugs Subject: Re: bin/2347: sysinstall: ppp: recursive call in malloc() Message-ID: <199701011000.CAA21981@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/2347; it has been noted by GNATS. From: Poul-Henning Kamp <phk@critter.dk.tfs.com> To: andrew@ugh.net.au Cc: freebsd-gnats-submit@freebsd.org Subject: Re: bin/2347: sysinstall: ppp: recursive call in malloc() Date: Wed, 01 Jan 1997 10:55:42 +0100 In message <199701010829.AAA18663@freefall.freebsd.org>, andrew@ugh.net.au writ >When installing via PPP I got the message on vty2 (the PPP screen anyway): >ppp in malloc(): warning: recursive call. This is actually a pretty devastating thing. It means that a call to malloc(3),free(3) or realloc(3) got interrupted by a SIGALRM and the signal handler called one of them again. I'm not definitively sure what POSIX & friends say about the reentrancy of malloc(3) but I belive it is not required to be reentrant. Anybody know definitively what POSIX say here ? I could add sigprocmask(2) calls around malloc and friends, but that would mean adding two syscalls per malloc/free/realloc calls, so I don't like the idea. It could be an option that the program could select of course. Alternatively any program like ppp that uses SIGALRM for a state machine is severely limited in its implementation. -- Poul-Henning Kamp | phk@FreeBSD.ORG FreeBSD Core-team. http://www.freebsd.org/~phk | phk@login.dknet.dk Private mailbox. whois: [PHK] | phk@tfs.com TRW Financial Systems, Inc. Power and ignorance is a disgusting cocktail.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199701011000.CAA21981>