Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp180247ybl; Thu, 15 Aug 2019 15:10:27 -0700 (PDT) X-Google-Smtp-Source: APXvYqzd10kwEyLKblGFG9qvITlpN2whAi9/BhG5goSwv/MH1AkcuTVscY782gKr2etDRmBJBC1t X-Received: by 2002:a65:68c9:: with SMTP id k9mr5173869pgt.28.1565907027490; Thu, 15 Aug 2019 15:10:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565907027; cv=none; d=google.com; s=arc-20160816; b=HQe3iOIg96RgqskPnj/EY96lmOyGVvRF6CSlN6GrQE0G5wn7jE5xWLpiMhhWEI6AuY CF11vaPvdSh80mItKw0L9aTrMwz+YDSKYTM9O8NanfAcmSN80t/6Bk7rIF3DjYLO2Y6C Fs83xKNdDMGmrOdjN+6SLB+xQvJqWLmOM9/Yr2h/SK2yEsad8cPpvgS0oYVh4GCECm2X wOFPnQQt8wtg+BnlRSdi/4BsfV+lrYAtOgCVUsAQBKY8qH2nd97uws5mJ+1qrCCaJ2Z/ INsTcyW1PQs2d5nqmj3W3bsNz2DkvXs/o7qxieiiK3v6KLF4Rr0gkwhY8DoqdtKPVArx XD9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=vY5tHl6xf3it+SPDQPXiGYNs9OGgZk9w7c8UAT6eC4Y=; b=Tt5NlVgq9cWP8h/cbB8hRYAS4Rk2CA86QK7MtoKVDlvKHquUiCHSCF80UXxScWblL5 mUzU2azhnA+0HxaihM2617GedWmmEdMYVaCMw7qP1ytptpJMAgzIrpRMDMoNwM1b/SRV tyRa1BMsIxq0MfQZmvmQLNrkPpp7egkzmP4l8YaTvbax+ufgD6m+2ByX9eVkq/eBw4Eu 3xIELWjhJgIU53It8fF5QLOpbcjr8aELKN+4/VMscSsozXOYkXmXZVSPH/+F2/WqgkGi RGZtX7qnbJBPsOKeuoVnpNgHd4I1JYtorLhpLh36eMYRKGnJcDlIJQ9Z0DsKOUwVrajG H/NA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p20si2545343pgk.177.2019.08.15.15.10.09; Thu, 15 Aug 2019 15:10:27 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732884AbfHOTfa (ORCPT + 99 others); Thu, 15 Aug 2019 15:35:30 -0400 Received: from mx2.suse.de ([195.135.220.15]:50528 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728547AbfHOTf3 (ORCPT ); Thu, 15 Aug 2019 15:35:29 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 8682CABBE; Thu, 15 Aug 2019 19:35:28 +0000 (UTC) Date: Thu, 15 Aug 2019 21:35:26 +0200 From: Michal Hocko To: Jason Gunthorpe Cc: LKML , linux-mm@kvack.org, DRI Development , Intel Graphics Development , Peter Zijlstra , Ingo Molnar , Andrew Morton , David Rientjes , Christian =?iso-8859-1?Q?K=F6nig?= , =?iso-8859-1?B?Suly9G1l?= Glisse , Masahiro Yamada , Wei Wang , Andy Shevchenko , Thomas Gleixner , Jann Horn , Feng Tang , Kees Cook , Randy Dunlap , Daniel Vetter Subject: Re: [PATCH 2/5] kernel.h: Add non_block_start/end() Message-ID: <20190815193526.GT9477@dhcp22.suse.cz> References: <20190815065829.GA7444@phenom.ffwll.local> <20190815122344.GA21596@ziepe.ca> <20190815132127.GI9477@dhcp22.suse.cz> <20190815141219.GF21596@ziepe.ca> <20190815155950.GN9477@dhcp22.suse.cz> <20190815165631.GK21596@ziepe.ca> <20190815174207.GR9477@dhcp22.suse.cz> <20190815182448.GP21596@ziepe.ca> <20190815190525.GS9477@dhcp22.suse.cz> <20190815191810.GR21596@ziepe.ca> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190815191810.GR21596@ziepe.ca> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu 15-08-19 16:18:10, Jason Gunthorpe wrote: > On Thu, Aug 15, 2019 at 09:05:25PM +0200, Michal Hocko wrote: > > > This is what you claim and I am saying that fs_reclaim is about a > > restricted reclaim context and it is an ugly hack. It has proven to > > report false positives. Maybe it can be extended to a generic reclaim. > > I haven't tried that. Do not aim to try it. > > Okay, great, I think this has been very helpful, at least for me, > thanks. I did not know fs_reclaim was so problematic, or the special > cases about OOM 'reclaim'. I am happy that this is more clear now. > On this patch, I have no general objection to enforcing drivers to be > non-blocking, I'd just like to see it done with the existing lockdep > can't sleep detection rather than inventing some new debugging for it. > > I understand this means the debugging requires lockdep enabled and > will not run in production, but I'm of the view that is OK and in line > with general kernel practice. Yes and I do agree with this in general. > The last detail is I'm still unclear what a GFP flags a blockable > invalidate_range_start() should use. Is GFP_KERNEL OK? I hope I will not make this muddy again ;) invalidate_range_start in the blockable mode can use/depend on any sleepable allocation allowed in the context it is called from. So in other words it is no different from any other function in the kernel that calls into allocator. As the API is missing gfp context then I hope it is not called from any restricted contexts (except from the oom which we have !blockable for). > Lockdep has > complained on that in past due to fs_reclaim - how do you know if it > is a false positive? I would have to see the specific lockdep splat. -- Michal Hocko SUSE Labs