Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Jul 2012 16:31:48 +0000
From:      "Bjoern A. Zeeb" <bzeeb-lists@lists.zabbadoz.net>
To:        John Baldwin <jhb@freebsd.org>
Cc:        freebsd-current FreeBSD <freebsd-current@freebsd.org>
Subject:   Re: swp_pager_meta_build DoS printf
Message-ID:  <B60059D0-9ED8-430D-8D7D-275E4536AC94@lists.zabbadoz.net>
In-Reply-To: <201207021036.45567.jhb@freebsd.org>
References:  <7BEE3948-EE35-48C2-B4B1-25E34087A4C4@lists.zabbadoz.net> <201207021036.45567.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On 2. Jul 2012, at 14:36 , John Baldwin wrote:

> On Sunday, July 01, 2012 8:23:31 am Bjoern A. Zeeb wrote:
>> Hey,
>>=20
>> hitting this printf in swp_pager_meta_build()
>>=20
>>                        if (uma_zone_exhausted(swap_zone)) {
>>                                printf("swap zone exhausted, increase =
kern.maxswzone\n");
>>                                vm_pageout_oom(VM_OOM_SWAPZ);
>>                                pause("swzonex", 10);
>>                        } else
>>=20
>> seems to be an effective way to put the machine into a state of no =
recovery
>> unless the memory situation would be able to clear itself.  Not that =
it wouldn't
>> otherwise be any better but in addition having a couple of =
tenthousands of these
>> going to console as well is really not helpful to try to do anything =
either.  Can
>> we make it a log() call or something?
>>=20
>> /bz
>>=20
>> PS: I am not sure as I have seen it on someone else's machines and =
it's
>> probably been ZFS that caused it.  I unfortunately neither had a way =
to
>> get back in or break to a kernel debugger, so information is sparse.
>=20
> This used to be a silent deadlock before I added the printf() and the =
call to
> OOM. :-P  Do you just want to ratelimit the printf?  We have an API to =
ratelimit
> printf's already.

Ratelimit would be fine;  I was writing that on the wrong time of the =
wrong day to
just get it out;  could you do that?

/bz

--=20
Bjoern A. Zeeb                                 You have to have visions!
   It does not matter how good you are. It matters what good you do!




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B60059D0-9ED8-430D-8D7D-275E4536AC94>