Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965839AbbKFAQ4 (ORCPT ); Thu, 5 Nov 2015 19:16:56 -0500 Received: from mail-pa0-f46.google.com ([209.85.220.46]:33752 "EHLO mail-pa0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965535AbbKFAQz (ORCPT ); Thu, 5 Nov 2015 19:16:55 -0500 Date: Thu, 5 Nov 2015 19:16:48 -0500 From: Tejun Heo To: Christoph Lameter Cc: Tetsuo Handa , mhocko@kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, torvalds@linux-foundation.org, rientjes@google.com, oleg@redhat.com, kwalker@redhat.com, akpm@linux-foundation.org, hannes@cmpxchg.org, vdavydov@parallels.com, skozina@redhat.com, mgorman@suse.de, riel@redhat.com Subject: Re: [PATCH] mm,vmscan: Use accurate values for zone_reclaimable() checks Message-ID: <20151106001648.GA18183@mtj.duckdns.org> References: <20151022143349.GD30579@mtj.duckdns.org> <20151022151414.GF30579@mtj.duckdns.org> <20151023042649.GB18907@mtj.duckdns.org> <20151102150137.GB3442@dhcp22.suse.cz> <201511052359.JBB24816.FHtFOJOSLOVMQF@I-love.SAKURA.ne.jp> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1468 Lines: 33 Hello, On Thu, Nov 05, 2015 at 11:45:42AM -0600, Christoph Lameter wrote: > Sorry but we need work queue processing for vmstat counters that is I made this analogy before but this is similar to looping with preemption off. If anything on workqueue stays RUNNING w/o making forward progress, it's buggy. I'd venture to say any code which busy loops without making forward progress in the time scale noticeable to human beings is borderline buggy too. If things need to be retried in that time scale, putting in a short sleep between trials is a sensible thing to do. There's no point in occupying the cpu and burning cycles without making forward progress. These things actually matter. Freezer used to burn cycles this way and was really good at burning off the last remaining battery reserve during emergency hibernation if freezing takes some amount of time. It is true that as it currently stands this is error-prone as workqueue can't detect these conditions and warn about them. The same goes for workqueues which sit in memory reclaim path but forgets WQ_MEM_RECLAIM. I'm going to add lockup detection, similar to how softlockup but that's a different issue, so please update the code. Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/