Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751933AbdI2FVf (ORCPT ); Fri, 29 Sep 2017 01:21:35 -0400 Received: from mail-yw0-f196.google.com ([209.85.161.196]:34401 "EHLO mail-yw0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751355AbdI2FV1 (ORCPT ); Fri, 29 Sep 2017 01:21:27 -0400 X-Google-Smtp-Source: AOwi7QDL+94cRCaxASEgyvznBHry8HMnoJKAViZ2iwtDd5Wi0ORZiLpekrQo/INjQTPI0zALUNiy+hFIdbkWG5OZQSM= MIME-Version: 1.0 In-Reply-To: <552d4502-0b0a-87fc-7b16-6b322c3af3ed@kernel.dk> References: <1506543239-31470-1-git-send-email-axboe@kernel.dk> <1506543239-31470-11-git-send-email-axboe@kernel.dk> <20170928144100.e11801ef742521e0e3f4b8df@linux-foundation.org> <552d4502-0b0a-87fc-7b16-6b322c3af3ed@kernel.dk> From: Amir Goldstein Date: Fri, 29 Sep 2017 08:21:26 +0300 Message-ID: Subject: Re: [PATCH 10/12] writeback: only allow one inflight and pending full flush To: Jens Axboe Cc: Linus Torvalds , Andrew Morton , Linux Kernel Mailing List , linux-fsdevel , Johannes Weiner , Jan Kara Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1145 Lines: 30 On Fri, Sep 29, 2017 at 3:17 AM, Jens Axboe wrote: > On 09/28/2017 11:44 PM, Linus Torvalds wrote: >> On Thu, Sep 28, 2017 at 2:41 PM, Andrew Morton >> wrote: >>> >>> test_and_set_bit()? >> >> If there aren't any atomicity concerns (either because of higher-level >> locking, or because racing and having two people set the bit is fine), >> it can be better to do them separately if the test_bit() is the common >> case and you can avoid dirtying a cacheline that way. >> >> But yeah, if that is the case, it might be worth documenting, because >> test_and_set_bit() is the more obviously appropriate "there can be >> only one" model. > > It is documented though, but maybe not well enough... > > I've actually had to document/explain it enough times now, that it > might be worth making a general construct. Though it has to be > used carefully, so perhaps it's better contained as separate use > cases. > Maybe change "Ensure that we only allow one of them pending" in the comment above. Only the "allow one inflight" part is correct. Or apply your follow up patch and be done with in... Amir.