Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp3419448ybb; Mon, 6 Apr 2020 08:36:02 -0700 (PDT) X-Google-Smtp-Source: APiQypLu6u9UVHgqqsoBnWeJjC19MxoLk4OqPt3BR/Iei0MmiUijtzjNRLGrYt5+CEiLwQ/rjNQc X-Received: by 2002:aca:d50f:: with SMTP id m15mr13948201oig.19.1586187361888; Mon, 06 Apr 2020 08:36:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586187361; cv=none; d=google.com; s=arc-20160816; b=Y/KNqEbCM2Z1yS4xnK5luje/ryxqslf1X5HzP0q6iu9nKX5tSmsc6epFdGRsu93k28 jl4McKu5a0MOxftcOw86V6FgsZ1qmf5PUAFql59aRRkcwuPIE7ToKm2livbWPB3RqHSq 7G/g5PbCg7iGpi4TU2sSAOj2kwfR+9wm1RwvCMSk1B1KD3a/FrtCA7Y92kk/gSTQZqNF nvNGtgrXwR0mG5B80gIGrTNjxfLCj493rcGLE+s5lP9vdkGdeJpbSDcZUFDKBevrtB7x mS+j3vByaKPBXVG3cg3JemuEdUmUFoWtvMfujJVIh9ojJBLxXf3mARMBtLhRUxH322/o S5/g== 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; bh=+MduM/9HJVy6bkh8pxzs1OTdZ7KT0AQSI+WZ1X2yWzE=; b=uHAA3k0uIg3GNqhDMDl7kkiYN1BOtCFS13Ha40C2PMmfYHFU9QYKTH8gfF4N0P6SJK X5lP1V4OjRCca9HDujhNGj9AL8xCrCrxDyjBzuRnoVmh1AlENocZ8urf4xTd5nLyUMu3 2KSWKwWxESQQg4op792nmaePO6Fsy4+EdZcjD5Ruo4o9Ilh0wvzE4QMf00Z9/P/D7Fde /ZcpI6kk3UrHD8RzazQDXADeriCfLoWMCeZ6SAoxOqbwtzBh+cCLn4AUqf8kd+z6VZ2m z+Nw7jBXVUnaH/LyDPNmo0Fylf3dnab5ogx/HXhXTn1hdf7eNQ0K4ZdkjoS0Og4DWWC7 K6LA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=nAkqWlSX; 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 e18si6550755oth.79.2020.04.06.08.35.44; Mon, 06 Apr 2020 08:36:01 -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=nAkqWlSX; 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 S1728996AbgDFPfS (ORCPT + 99 others); Mon, 6 Apr 2020 11:35:18 -0400 Received: from mail-yb1-f194.google.com ([209.85.219.194]:37979 "EHLO mail-yb1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728843AbgDFPfS (ORCPT ); Mon, 6 Apr 2020 11:35:18 -0400 Received: by mail-yb1-f194.google.com with SMTP id 204so65146ybw.5 for ; Mon, 06 Apr 2020 08:35:17 -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=+MduM/9HJVy6bkh8pxzs1OTdZ7KT0AQSI+WZ1X2yWzE=; b=nAkqWlSXVzfD2OyrsJv+DJCzxxvRXhc2u3dO5RWOKYsugkUEH3VVSUI1BilNYk9C31 WRP9tVM7eYAvgL4lTtuvt7yJmwSsHFVBG+n6Img5X2LgDmDxIHTtoNkagE+qRKFDL7Jb o+zyIsJpA2SZeW5NOfkMTrCIHulQ6XoCM+SeJE+AG32lUgPjKxVD74Sq5lv3dqlkAv8v ecG7O17JF8MUs+UxoEq16pqhCUws/LIaFZKpipYOngeFqnCpAnAn5OWwmw7oFMU6Qef/ UUjov5qUBTajxiSQQ7XCNObeYX+liBiTRAnw04gUAUy28YW9E7btXfKk42fFXhwtIt3H FpOA== 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=+MduM/9HJVy6bkh8pxzs1OTdZ7KT0AQSI+WZ1X2yWzE=; b=udb5kP5iIHNBY4c8ivBsP/cL743JgXOgMomKcRd7CBq+MMrSL2U7/TBGEiz267npCf 30V64SXz8l1FjJu0ONiOTH5u8JralqB3PV0QM7XzixbreQKefTIxFe4Nxlu83bMRsIYU 6lOonP4EaFsxUB1JHqAQcPouJbJLFbiBQDNpqYYuetF5rRKH7pkjrMDbfcjzEDDhpYiW zwKYwwvzZoOQ9pEYnTzW1wbS2Dznf7bUOgcLdhgOCecbYUzc+OiKcVY1ElV3t1v+eqBF rvet+oduzjho7fBRBaSkMviuRiTpck6fCznd4kq5Nlvc/HodLPxCLpI5iKMWJPz+sjpx pTFA== X-Gm-Message-State: AGi0Pub68XQWps9Bx9AIRIwuI9nMqMQ9ubS7t2UMYrjAW7hHU13ATkUx hxeihPH98fMBRVzO0JZVQ6vP/9/GyEUPBVoIZJx0RTFZPk8= X-Received: by 2002:a25:d382:: with SMTP id e124mr33930648ybf.162.1586187316742; Mon, 06 Apr 2020 08:35:16 -0700 (PDT) MIME-Version: 1.0 References: <20200327225102.25061-1-walken@google.com> <20200327225102.25061-7-walken@google.com> <20200401134234.GR20696@hirez.programming.kicks-ass.net> In-Reply-To: <20200401134234.GR20696@hirez.programming.kicks-ass.net> From: Michel Lespinasse Date: Mon, 6 Apr 2020 08:35:03 -0700 Message-ID: Subject: Re: [PATCH v3 06/10] mmap locking API: convert nested write lock sites To: Peter Zijlstra Cc: Andrew Morton , linux-mm , LKML , Laurent Dufour , Vlastimil Babka , Matthew Wilcox , Liam Howlett , Jerome Glisse , Davidlohr Bueso , David Rientjes , Hugh Dickins , Ying Han , Jason Gunthorpe , Markus Elfring 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 Wed, Apr 1, 2020 at 6:42 AM Peter Zijlstra wrote: > > On Fri, Mar 27, 2020 at 03:50:58PM -0700, Michel Lespinasse wrote: > > > @@ -26,6 +31,12 @@ static inline void mmap_write_unlock(struct mm_struct *mm) > > up_write(&mm->mmap_sem); > > } > > > > +/* Pairs with mmap_write_lock_nested() */ > > +static inline void mmap_write_unlock_nested(struct mm_struct *mm) > > +{ > > + up_write(&mm->mmap_sem); > > +} > > + > > static inline void mmap_downgrade_write_lock(struct mm_struct *mm) > > { > > downgrade_write(&mm->mmap_sem); > > Why does unlock_nested() make sense ? I thought it would make things more explicit to match the nested lock with the corresponding unlock site; however this information is not used at the moment (i.e. the nested unlock is implemented identically to the regular unlock). Having the matching sites explicitly identified may help when implementing lock instrumentation, or when changing the lock type (another patchset I am working on needs to pass an explicit lock range to the nested lock and unlock sites). I'll admit this is not a super strong argument, and can be deferred to when an actual need shows up in the future.