s3: Remove madvise support
authorSteven Danneman <steven.danneman@isilon.com>
Wed, 4 Mar 2009 19:04:31 +0000 (11:04 -0800)
committerSteven Danneman <steven.danneman@isilon.com>
Wed, 4 Mar 2009 19:07:27 +0000 (11:07 -0800)
This reverts 193be432.  The MADVISE_PROTECT is inherited by all child
processes and cannot be unset.  The intention of the original patch was
to protect the parent process, but allow children to be killed in low
memory.  Since this isn't possible with the current API, reverting the
whole feature.

source3/configure.in
source3/lib/util.c

index d67feccb9b518a56a4c621991dc82b10195e7e0c..e48ff345540782ffe2dc9201757ca4b2ed4c335d 100644 (file)
@@ -4722,35 +4722,6 @@ SMB_LIBRARY(lua, 0)
 SMB_LIBRARY(addns, 0, no, [undefined API])
 
 
-#################################################
-# check to see if we should set the protected madvise flag,
-# which will keep smbd alive in low memory conditions
-AC_MSG_CHECKING(whether to protect smbd from being killed in low memory)
-AC_ARG_WITH(madvise-protect,
-[AS_HELP_STRING([--with-madvise-protect], [Include low memory madvise protection (default=no)])],
-[ case "$withval" in
-  yes)
-    AC_TRY_COMPILE([
-        #include <sys/mman.h>
-        ],[
-        int a = MADV_PROTECT;
-        ],
-        [samba_cv_madvise_protect=yes],
-        [samba_cv_madvise_protect=no])
-    if test x"$samba_cv_madvise_protect" = x"yes"; then
-        AC_MSG_RESULT(yes)
-        AC_DEFINE(WITH_MADVISE_PROTECTED,1,[Whether to include low memory protection support])
-    else
-        AC_MSG_ERROR(Low memory protection supporte requires availability of MADVISE_PROTECT flag.)
-    fi
-    ;;
-  *)
-    AC_MSG_RESULT(no)
-    ;;
-  esac ],
-  AC_MSG_RESULT(no)
-)
-
 #################################################
 # these tests are taken from the GNU fileutils package
 AC_CHECKING(how to get filesystem space usage)
index 89f7be8e6ce3e48b463b9b3fecd90f4d948b1c1b..ec794ca74e765e24a4578fd193a7f874fbd4f5ff 100644 (file)
@@ -899,13 +899,6 @@ bool reinit_after_fork(struct messaging_context *msg_ctx,
         * numbers as each other */
        set_need_random_reseed();
 
-#ifdef WITH_MADVISE_PROTECTED
-       /* Protect parent process from being killed by kernel when system
-        * memory is low.  Child processes can still be killed */
-       if(!parent_longlived)
-               madvise(NULL,0,MADV_PROTECT);
-#endif
-
        /* tdb needs special fork handling */
        if (tdb_reopen_all(parent_longlived ? 1 : 0) == -1) {
                DEBUG(0,("tdb_reopen_all failed.\n"));