Enhance r199804 by marking the daemonised child as immune to OOM instead
of short-living parent. Only mark the master process that accepts connections, do not protect connection handlers spawned from inetd. Submitted by: Mykola Dzham <i levsha me> Reviewed by: attilio MFC after: 1 week
This commit is contained in:
parent
e1f28bd7f3
commit
412ea5c6c5
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=206397
@ -1330,10 +1330,6 @@ main(int ac, char **av)
|
|||||||
/* Initialize configuration options to their default values. */
|
/* Initialize configuration options to their default values. */
|
||||||
initialize_server_options(&options);
|
initialize_server_options(&options);
|
||||||
|
|
||||||
/* Avoid killing the process in high-pressure swapping environments. */
|
|
||||||
if (madvise(NULL, 0, MADV_PROTECT) != 0)
|
|
||||||
debug("madvise(): %.200s", strerror(errno));
|
|
||||||
|
|
||||||
/* Parse command-line arguments. */
|
/* Parse command-line arguments. */
|
||||||
while ((opt = getopt(ac, av, "f:p:b:k:h:g:u:o:C:dDeiqrtQRT46")) != -1) {
|
while ((opt = getopt(ac, av, "f:p:b:k:h:g:u:o:C:dDeiqrtQRT46")) != -1) {
|
||||||
switch (opt) {
|
switch (opt) {
|
||||||
@ -1749,6 +1745,10 @@ main(int ac, char **av)
|
|||||||
/* Reinitialize the log (because of the fork above). */
|
/* Reinitialize the log (because of the fork above). */
|
||||||
log_init(__progname, options.log_level, options.log_facility, log_stderr);
|
log_init(__progname, options.log_level, options.log_facility, log_stderr);
|
||||||
|
|
||||||
|
/* Avoid killing the process in high-pressure swapping environments. */
|
||||||
|
if (!inetd_flag && madvise(NULL, 0, MADV_PROTECT) != 0)
|
||||||
|
debug("madvise(): %.200s", strerror(errno));
|
||||||
|
|
||||||
/* Initialize the random number generator. */
|
/* Initialize the random number generator. */
|
||||||
arc4random_stir();
|
arc4random_stir();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user