From owner-freebsd-current@FreeBSD.ORG Wed Aug 15 16:48:08 2012 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D54BE1065679; Wed, 15 Aug 2012 16:48:07 +0000 (UTC) (envelope-from pluknet@gmail.com) Received: from mail-gg0-f182.google.com (mail-gg0-f182.google.com [209.85.161.182]) by mx1.freebsd.org (Postfix) with ESMTP id 676738FC0C; Wed, 15 Aug 2012 16:48:07 +0000 (UTC) Received: by ggnk4 with SMTP id k4so2416316ggn.13 for ; Wed, 15 Aug 2012 09:48:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=ztj+0GPNu9BEoC/NuNxmwIuXwFQQRQhv+TEQHSKG2AI=; b=IhuH1DJZqzWyJijZuZHuJoPi8sgQOoADCkSj2Os4fvmjSfYzyYPzg5jX0/6ObZiZqV H2An+CFPfBd1EOhqAdBfqs0ibHHJFH3mw6Uh1Zf3zvtc4O69lHNlvJSVzGACxfHve1UZ Ddep/RFZOzTXlBozLXOxc48Lj4xB99r8N1qriT3qKgV1dV4cZeZSSflsMH9PvqHBtks5 f48zwvIxUh4MX//f0sZEh+RcFrcO9W1Q0JNPioCYSMvC4wn0lc7n6GWbU1HWi1zfZ2xc Egof/o9JTEkAHmZKczBMlj2KnaAf+V1m7vRGuiP78Zvv1oKPkcj5P1+FnWyZund1rT81 6aiw== MIME-Version: 1.0 Received: by 10.42.180.201 with SMTP id bv9mr16160037icb.43.1345049286505; Wed, 15 Aug 2012 09:48:06 -0700 (PDT) Received: by 10.64.165.34 with HTTP; Wed, 15 Aug 2012 09:48:06 -0700 (PDT) In-Reply-To: <201208151121.34815.jhb@freebsd.org> References: <7BEE3948-EE35-48C2-B4B1-25E34087A4C4@lists.zabbadoz.net> <201208151121.34815.jhb@freebsd.org> Date: Wed, 15 Aug 2012 20:48:06 +0400 Message-ID: From: Sergey Kandaurov To: John Baldwin Content-Type: text/plain; charset=ISO-8859-1 Cc: "Bjoern A. Zeeb" , freebsd-current FreeBSD , des@freebsd.org Subject: Re: swp_pager_meta_build DoS printf X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Aug 2012 16:48:08 -0000 On 15 August 2012 19:21, John Baldwin wrote: > On Monday, August 13, 2012 1:49:38 am Sergey Kandaurov wrote: >> On 2 July 2012 20:31, Bjoern A. Zeeb wrote: >> > >> > On 2. Jul 2012, at 14:36 , John Baldwin wrote: >> > >> >> On Sunday, July 01, 2012 8:23:31 am Bjoern A. Zeeb wrote: >> >>> Hey, >> >>> >> >>> hitting this printf in swp_pager_meta_build() >> >>> >> >>> if (uma_zone_exhausted(swap_zone)) { >> >>> printf("swap zone exhausted, increase > kern.maxswzone\n"); >> >>> vm_pageout_oom(VM_OOM_SWAPZ); >> >>> pause("swzonex", 10); >> >>> } else >> >>> >> >>> 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? >> >>> >> >>> /bz >> >>> >> >>> 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. >> >> >> >> 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? >> >> Hi, looks like the discussion was abandoned. >> What about this patch? It enables to ratelimit the printf. >> Also, are the new variables put in the right places from the style pov? > > I think DES has a newer variant of this now? Yes, and for my taste it's better as it is closer to fix the cause of the problem, not the consequences (unrated printf). Not sure if both should be combined, I believe the DES change is enough here. -- wbr, pluknet