Re: Refactoring backend fork+exec code - Mailing list pgsql-hackers

From Andres Freund
Subject Re: Refactoring backend fork+exec code
Date
Msg-id 20231130203129.ukiozxjmcmxkzrsj@awork3.anarazel.de
Whole thread Raw
In response to Re: Refactoring backend fork+exec code  ("Tristan Partin" <tristan@neon.tech>)
Responses Re: Refactoring backend fork+exec code
List pgsql-hackers
Hi,

On 2023-11-30 12:44:33 -0600, Tristan Partin wrote:
> >  +        /*
> >  +         * Set reference point for stack-depth checking.  This might seem
> >  +         * redundant in !EXEC_BACKEND builds; but it's not because the postmaster
> >  +         * launches its children from signal handlers, so we might be running on
> >  +         * an alternative stack. XXX still true?
> >  +         */
> >  +        (void) set_stack_base();
> 
> Looks like there is still this XXX left. Can't say I completely understand
> the second sentence either.

We used to start some child processes of postmaster in signal handlers. That
was fixed in

commit 7389aad6366
Author: Thomas Munro <tmunro@postgresql.org>
Date:   2023-01-12 12:34:23 +1300
 
    Use WaitEventSet API for postmaster's event loop.


In some cases signal handlers run on a separate stack, which meant that the
set_stack_base() we did in postmaster would yield a completely bogus stack
depth estimation.  So this comment should likely have been removed. Thomas?

Greetings,

Andres Freund



pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: Refactoring backend fork+exec code
Next
From: Peter Eisentraut
Date:
Subject: Re: GUC names in messages