Doug MacEachern wrote:
> 
> On Tue, 26 Jun 2001, Adi Fairbank wrote:
> 
> >
> > If this is the case, it would be helpful to prevent the parent process from
> > *ever* swapping to disk.
> >
> > The Linux kernel has a system call mlockall() which disables all memory
> > paging for the current process.  This sounds like exactly the recipe for
> > preventing parent process swapping.  It won't affect spawned child
> > processes, so shouldn't pose a threat of consuming all physical memory and
> > crashing the system.
> >
> > I want to play around with this, but I'm not sure where in the mod_perl
> > source to call mlockall().  It would need to be before the parent spawns any
> > children..  Has anyone tried using Linux's mlockall()/mlock() with mod_perl?
> 
> according the manpage:
> "Child processes do not inherit page locks across a fork."
> 
> so you would need to call it in a child init handler, but:
> "Only root processes are allowed to lock pages."

Actually, I don't want child processes to inherit the page locks across a
fork.  I just wanted to experiment with performance issues when only the
parent process is locked in memory.  (I have a theory that when the parent
process swaps to disk, the swapped pages become unshared for the rest of the
server's life)

I was hoping you could give me a hint as to where in the source code I could
call mlockall(), e.g. file mod_perl.c, line NNN..

Thanks,
-Adi

Reply via email to