Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1741874

Re: [PATCH 10/12] writeback: only allow one inflight and pending full flush

From Jens Axboe <axboe@kernel.dk>
Newsgroups linux.kernel
Subject Re: [PATCH 10/12] writeback: only allow one inflight and pending full flush
Date 2017-09-29 02:20 +0200
Message-ID <uuRc5-7nV-5@gated-at.bofh.it> (permalink)
References <uuqYh-7LT-3@gated-at.bofh.it> <uuqYi-7LT-11@gated-at.bofh.it> <uuOQV-5PN-3@gated-at.bofh.it> <uuOQW-5PN-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 09/28/2017 11:44 PM, Linus Torvalds wrote:
> On Thu, Sep 28, 2017 at 2:41 PM, Andrew Morton
> <akpm@linux-foundation.org> 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.

-- 
Jens Axboe

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/12 v3] Writeback improvements Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
  [PATCH 10/12] writeback: only allow one inflight and pending full flush Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
    Re: [PATCH 10/12] writeback: only allow one inflight and pending  full flush Andrew Morton <akpm@linux-foundation.org> - 2017-09-28 23:50 +0200
      Re: [PATCH 10/12] writeback: only allow one inflight and pending full flush Linus Torvalds <torvalds@linux-foundation.org> - 2017-09-28 23:50 +0200
        Re: [PATCH 10/12] writeback: only allow one inflight and pending full  flush Jens Axboe <axboe@kernel.dk> - 2017-09-29 02:20 +0200
          Re: [PATCH 10/12] writeback: only allow one inflight and pending full flush Amir Goldstein <amir73il@gmail.com> - 2017-09-29 07:30 +0200
      Re: [PATCH 10/12] writeback: only allow one inflight and pending full  flush Jens Axboe <axboe@kernel.dk> - 2017-09-29 02:20 +0200
  [PATCH 04/12] fs: kill 'nr_pages' argument from wakeup_flusher_threads() Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
  [PATCH 09/12] writeback: move nr_pages == 0 logic to one location Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
  [PATCH 01/12] buffer: have alloc_page_buffers() use __GFP_NOFAIL Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
    Re: [PATCH 01/12] buffer: have alloc_page_buffers() use __GFP_NOFAIL Nikolay Borisov <nborisov@suse.com> - 2017-09-28 17:30 +0200
  [PATCH 03/12] buffer: eliminate the need to call free_more_memory() in __getblk_slow() Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
    Re: [PATCH 03/12] buffer: eliminate the need to call  free_more_memory() in __getblk_slow() Nikolay Borisov <nborisov@suse.com> - 2017-09-28 17:40 +0200
  [PATCH 06/12] writeback: provide a wakeup_flusher_threads_bdi() Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
  [PATCH 05/12] writeback: switch wakeup_flusher_threads() to cyclic writeback Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
  [PATCH 11/12] writeback: make sync_inodes_sb() use range cyclic writeback Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
  [PATCH 07/12] writeback: pass in '0' for nr_pages writeback in laptop mode Jens Axboe <axboe@kernel.dk> - 2017-09-27 22:20 +0200
  Re: [PATCH 0/12 v3] Writeback improvements John Stoffel <john@quad.stoffel.home> - 2017-09-28 15:20 +0200
    Re: [PATCH 0/12 v3] Writeback improvements Jens Axboe <axboe@kernel.dk> - 2017-09-28 15:50 +0200

csiph-web