mirror of
https://github.com/postgres/postgres.git
synced 2025-11-09 06:21:09 +03:00
Use SIGURG rather than SIGUSR1 for latches.
Traditionally, SIGUSR1 has been overloaded for ad-hoc signals, procsignal.c signals and latch.c wakeups. Move that last use over to a new dedicated signal. SIGURG is normally used to report out-of-band socket data, but PostgreSQL doesn't use that facility. The signal handler is now installed in all postmaster children by InitializeLatchSupport(). Those wishing to disconnect from it should call ShutdownLatchSupport(). Future patches will use this separation of signals to avoid the need for a signal handler on some operating systems. Discussion: https://postgr.es/m/CA+hUKGJjxPDpzBE0a3hyUywBvaZuC89yx3jK9RFZgfv_KHU7gg@mail.gmail.com
This commit is contained in:
@@ -656,6 +656,10 @@ PostmasterMain(int argc, char *argv[])
|
||||
pqsignal_pm(SIGUSR2, dummy_handler); /* unused, reserve for children */
|
||||
pqsignal_pm(SIGCHLD, reaper); /* handle child termination */
|
||||
|
||||
#ifdef SIGURG
|
||||
pqsignal_pm(SIGURG, SIG_IGN); /* ignored */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* No other place in Postgres should touch SIGTTIN/SIGTTOU handling. We
|
||||
* ignore those signals in a postmaster environment, so that there is no
|
||||
|
||||
Reference in New Issue
Block a user