lkml.org 
[lkml]   [2001]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Removing an executable while it runs
On Wed, Dec 05, 2001 at 07:25, Jeff Dike wrote:
> twalberg@mindspring.com said:
> > mlockall() only locks those pages that are **currently** paged in, or
> > optionally those that will be paged in in the future. Unless you have
> > a way to make sure that all pages of the binary are actually in memory
> > before you call mlockall(), this gains you nothing.
>
> No, mlockall will page in the entire process before returning if you ask it to.
>
> See this snippet in mlock_fixup:
>
> if (newflags & VM_LOCKED) {
> pages = -pages;
> make_pages_present(start, end);
> }
>
> VM_LOCKED comes in through the mlockall system call.
>
> Jeff

Well, according to the man page, mister Walberg is right. How can I
force mlockall to page in the entire process ? And if it is possible,
I guess it won't resolve my problem since it is the filesystem which
refuses to release the blocks, right ?
To be more precise, here is my situation: the executable file is
located on a ramfs filesystem. Once it is started, I would like to get
the space back so that the RAM can be used. Is there a clean solution ?

P.S: on behalf of Cyrille (who made the first post), I would like to
thank you for your answers, it is greatly appreciated.

P.P.S: is it required to include the people involved in the thread in
the Cc: field ? I have looked in the mailing list FAQ and have not
found the reason.

--
Eric-Olivier Lamey
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:13    [W:0.048 / U:0.136 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site