Received: by 10.213.65.68 with SMTP id h4csp956800imn; Fri, 6 Apr 2018 11:53:15 -0700 (PDT) X-Google-Smtp-Source: AIpwx4/4m5UEO8V6vqTNLd7STwjDvhnuClf0BOYpihVE/OMS0ra38Th4wquiczrXZedlfmxfzk/L X-Received: by 2002:a17:902:d205:: with SMTP id t5-v6mr27108839ply.381.1523040795776; Fri, 06 Apr 2018 11:53:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523040795; cv=none; d=google.com; s=arc-20160816; b=fdmlDil6H0CgzCzXtbrZe+YJdr5Au6q8SRROB41n/tnKjLRnA5ukfdnzQptSGIKbJ7 7kyZGoNjQUqKh+yMUvjgR1CzeUD1dsxGMFx9VpXFaAtmf+habvY9gXdTX8XEPVT8Fea9 1/1JE9v2eRBD81KHAOPNgs7XQBkJ8RqG+819WPryok8e7zQvCFpS9KwyOynWojpEbbPR ISrM+vKQknLyY63gWkgF6gw5ZapTf7t7UV44fqguUAHDYdxcnmDP+2+hNJBihZXTvA6c OzHkHxGwAK6h58cpYjFXyAcPDO8GCNoParAl9NtWku9oRzZlug6HY2XC2e6p7MkmRfYW rDVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature :arc-authentication-results; bh=8FF3cj47dUuSiiJChI+ppomW2VzxR2HVe2aU8Lpg4D4=; b=h/vqnh47SJWye3UcgYjv/kkaqsTLMJzCPQLLPctTboxKfnqHP5u1k1gOM2i7MF1NbG P0EWcUY/57ZcvHcV1jBCU2aA9LZ1I3/3xxCEF5s661lXTscJu3XPbjsSrkxWFPtc2CEp oMD+LQhuLxf2UpN77lRlMm8vgVYZWfMz6A+hdqhSt5CBwYb6q1LH4EJN9lSCso30TTb1 D6uTqMQ3smn6UnkPHobHogykLZ2OUYvDjGrPSFCUPMv8pRwOsYYABxLXUy4a3v/z97e7 EV4M6sv8+sBsUwdEiE479q382WC3qNGlxPwtiZopk35TnBcdUZpfoawZ5Y7YczF5aTU+ ZNmQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=Ax4C1KSL; 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=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n9si7780433pgu.263.2018.04.06.11.52.36; Fri, 06 Apr 2018 11:53:15 -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; dkim=pass header.i=@google.com header.s=20161025 header.b=Ax4C1KSL; 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=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751808AbeDFStt (ORCPT + 99 others); Fri, 6 Apr 2018 14:49:49 -0400 Received: from mail-yb0-f175.google.com ([209.85.213.175]:39720 "EHLO mail-yb0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751642AbeDFSts (ORCPT ); Fri, 6 Apr 2018 14:49:48 -0400 Received: by mail-yb0-f175.google.com with SMTP id g197-v6so734738ybf.6 for ; Fri, 06 Apr 2018 11:49:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=8FF3cj47dUuSiiJChI+ppomW2VzxR2HVe2aU8Lpg4D4=; b=Ax4C1KSLrF2wrI1UrjkrqyKHct8dtC7ve/kGS9X6Ww7GIhYt91KLCgatqKj0r0Se6S 1FbbHsQZXovhRqvU1AZzXp5ImYzgLu41uRSfRotFYJYKlV8vivwiXR1OEbfYhgFaLXoF LacKF6pdbDPZBvHIIbbighLdGVrd5msxHjsDHkn3YHnRsQ+ePayRoly9iKEx8Wc0M62C IqyyH28aP77Y81gCgNUmaoh9PRg7w4dzaePryyUQAb6goMYxVEpoAkbwg0u4s4KSfmfK bfL49mbMFMDYM4Lx047rYWaSIMwNcT0u/z7sf6EMqT7R9cmi10DiJmZgoBOIC9M6NPZK u4gg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=8FF3cj47dUuSiiJChI+ppomW2VzxR2HVe2aU8Lpg4D4=; b=i6CjxTMDDaIn2QDJ6JOcWnN4bH99y2eN46tWOJwn1OJiV8xnbyN9Ylq5lIyfqMA1+f p8SpYWKMdCgi3EZZ7aohfysysXFOpwIjuBnnrmUjqQBdf6tKcnGP2yaqX9fC6h2BFcx/ ZzKsvZ78gr5FUvRxid4x9ishsnAMwUF5t2gKVSlck7B+a6Vp9StDVaMPz9tUqFmUa7gW UJYeoXVW1JZfXjrNG7fxuGllBenril/zC96XuM2R3YrqYPnPsFjDoHhTH3BOKRTCy4vS /DYOJZbnM3i1uQcftnCI2qILlGIoDynzRomqdIQAOE9FG/4htcQssXzkMVjXEdbn3rVT Ft2g== X-Gm-Message-State: ALQs6tA9ZtbJyIDW+h23Zp6Ewrg9GgnuN66Dz7Unk47QuwZmTslZZk9u lnaVLXkNwyvhH0f4mTyvQhECQE/qUtDToEiRA2Ysbw== X-Received: by 2002:a25:ac8d:: with SMTP id x13-v6mr16400549ybi.448.1523040587229; Fri, 06 Apr 2018 11:49:47 -0700 (PDT) MIME-Version: 1.0 References: <2cb713cd-0b9b-594c-31db-b4582f8ba822@meituan.com> <20180406080324.160306-1-gthelen@google.com> <20180406080714.GG8286@dhcp22.suse.cz> In-Reply-To: <20180406080714.GG8286@dhcp22.suse.cz> From: Greg Thelen Date: Fri, 06 Apr 2018 18:49:35 +0000 Message-ID: Subject: Re: [PATCH] writeback: safer lock nesting To: Michal Hocko Cc: Wang Long , Andrew Morton , Johannes Weiner , Tejun Heo , npiggin@gmail.com, LKML , Linux MM Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Apr 6, 2018 at 1:07 AM Michal Hocko wrote: > On Fri 06-04-18 01:03:24, Greg Thelen wrote: > [...] > > diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c > > index d4d04fee568a..d51bae5a53e2 100644 > > --- a/fs/fs-writeback.c > > +++ b/fs/fs-writeback.c > > @@ -746,10 +746,11 @@ int inode_congested(struct inode *inode, int cong_bits) > > if (inode && inode_to_wb_is_valid(inode)) { > > struct bdi_writeback *wb; > > bool locked, congested; > > + unsigned long flags; > > > > - wb = unlocked_inode_to_wb_begin(inode, &locked); > > + wb = unlocked_inode_to_wb_begin(inode, &locked, &flags); > Wouldn't it be better to have a cookie (struct) rather than 2 parameters > and let unlocked_inode_to_wb_end DTRT? Nod. I'll post a V2 patch with that change. > > congested = wb_congested(wb, cong_bits); > > - unlocked_inode_to_wb_end(inode, locked); > > + unlocked_inode_to_wb_end(inode, locked, flags); > > return congested; > > } > -- > Michal Hocko > SUSE Labs