On Thu, Dec 18, 2008 at 12:02:06PM -0500, FreeBSD wrote:
> Daniel Bye a ?crit :
> >On Thu, Dec 18, 2008 at 10:28:18AM -0600, Kirk Strauser wrote:
> >>On Thursday 18 December 2008 09:16:10 FreeBSD wrote:
> >>>Hi everyone,
> >>>
> >>>I have a FreeBSD 7.0-Release server that started to swap after an error
> >>>in a shell script (process spawning competition ;-) ). I killed the
> >>>shell and the RAM is now OK. The problem is that the swap is still used.
> >>>How can I "reset" the swap?
> >>You don't.  The system will handle it for you, I promise.  :-)
> >
> >And very well, too.
> >
> >You can prompt it to move pages back into RAM if you start using a swapped-
> >out process again - say, for example, a quiescent word processor had been
> >swapped out, you could get it back by raising it and starting to type.
> >
> >But as Kirk said, there really is no need. It's one of the kernel's many
> >jobs, and I'm inclined to leave it get on with it!
> >
> >Dan
> >
> Thanks for your answer. I'm asking here because it's been several days 
> and there is still used swap for data that should never be used anymore. 
> If the kernel wants to keep it, why not move it to RAM now that there is 
> some free?

Because it has swapped out an entire process, which hasn't subsequently
been woken up again. It's you that says the data are never going to be
needed again - the kernel doesn't know that, so keeps the pages there in
swap until you either reawaken the process, or kill it, at which point
the swap space they occupied will be freed up.

You can see which processes are swapped out in top - the process name is
in parentheses. If it is irking you sufficiently, you can kill the
processes and reclaim your swap ;-)


Daniel Bye
                                              ASCII ribbon campaign ( )
                                         - against HTML, vCards and  X
                                - proprietary attachments in e-mail / \

Attachment: pgpxjvbhYUZzD.pgp
Description: PGP signature

Reply via email to