options NO_SWAPPING, still wants swap

Bruce Evans bde at zeta.org.au
Fri Apr 11 01:38:56 PDT 2003


On Thu, 10 Apr 2003, Lucky Green wrote:

> I compiled a kernel with "options NO_SWAPPING", yet CURRENT still
> attempts to allocate swap space:

NO_SWAPPING has nothing to do with not allocating swap space.  It prevents
swapping of upages and stack pages only.

Unfortunately, NOTES' description of NO_SWAPPING says that it disables
swapping without explaining what swapping is (it is just swapping of
upages and stack, and has nothing to do with generic VM paging).
NO_SWAPPING is documented mainlly in the commitlog for the change that
added it:

%%%
RCS file: /home/ncvs/src/sys/vm/vm_pageout.c,v
Working file: vm_pageout.c
head: 1.228
...
----------------------------
revision 1.66
date: 1996/02/22 10:57:37;  author: davidg;  state: Exp;  lines: +20 -12
Add a "NO_SWAPPING" option to disable swapping. This was originally done
to help diagnose a problem on wcarchive (where the kernel stack was
sometimes not present), but is useful in its own right since swapping
actually reduces performance on some systems (such as wcarchive).
Note: swapping in this context means making the U pages pageable and has
nothing to do with generic VM paging, which is unaffected by this option.

Reviewed by:	 <dyson>
----------------------------
%%%

> As a result, everything from make to cp to httpd (on a server with no load
> other than random search engine visits) sometimes fails. The machine has
> 1GB of RAM, all seen by FreeBSD. Since I ran the same processes on a
> machine with 128MB of RAM and 256MB of swap without ever running out of
> memory, something seems broken with FreeBSD's use of memory when options
> NO_SWAPPING is chosen.

I always use it, with and without actual swap, and have had no problems
from it.

Bruce


More information about the freebsd-current mailing list