Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 06 May 2002 19:10:30 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        Paul Saab <ps@mu.org>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: swap_pager_getswapspace: failed
Message-ID:  <3CD73796.365A3440@mindspring.com>
References:  <20020506111950.T50903-100000@fw.cgn.icom> <3CD6B7E1.F1616DDE@mindspring.com> <20020506221346.GA268@elvis.mu.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Paul Saab wrote:
> Terry Lambert (tlambert2@mindspring.com) wrote:
> > Bogdan TARU wrote:
> > >  (1 zillion x) swap_pager_getswapspace: failed
> > >
> > >  Could you tell me why I do get this? We're talking about a very idle
> > > machine, used only for development (CVS + postgresql + about 16 httpd
> > > apaches -- MaxClients). RAM: 512, Swap 512. I've never seen more than 12MB
> > > of swap in use. And, more puzzling: why do I get this in sysctl, and not
> > > in a log?
> >
> > See /var/log/messages and/or "dmesg" and/or look at your console.
> >
> > The reason you get these messages is that you are out of kernel
> > virtual address space to provide mappings for swap.
> >
> > 512M + 512M = 1G... how big is your KVA?
> 
> What are you smoking?  The machine is out of swap space, not KVA.

He's seeing "a zillion of them".

See the swp_pager_getswapspace()/swp_sizecheck() interaction
("swap_pager_full = 2"/"swap_pager_full = 0").

Then look in kern/subr_blist.c at blist_alloc(), at where
SWAPBLK_NONE can be returned.

The toggling necessary for "a zillion" can only happen if he's
bouncing between above the high water mark and below the low
water mark on amount used.

I did neglect one case... where he would also be getting "a
zillion"... but he'd also be getting killed processes out the
ying-yang, in that case, and he didn't report any (maybe he
just omitted to give us the information, though).  Processes
starting and dying would account for the bounce.

But... he also says he never sees more than 12M of swap in use.

Personally, I think he might be using up the available KVA space
by fragging it with tons of shared memory segments.  We still
have not seen the output of "ipcs -a" and "ipcs -M" after boot
and right before the crash.

-- Terry

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3CD73796.365A3440>