[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJrWOzBb1YSC3UMA3Pe8cK8X3jJqOGCueg4Yg6hov9_eAhjoXg@mail.gmail.com>
Date: Sat, 19 May 2018 22:25:24 +0200
From: Roman Penyaev <roman.penyaev@...fitbricks.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-block <linux-block@...r.kernel.org>,
linux-rdma <linux-rdma@...r.kernel.org>,
Jens Axboe <axboe@...nel.dk>,
Christoph Hellwig <hch@...radead.org>,
Sagi Grimberg <sagi@...mberg.me>,
Bart Van Assche <bart.vanassche@...disk.com>,
Or Gerlitz <ogerlitz@...lanox.com>,
Doug Ledford <dledford@...hat.com>,
"swapnil.ingle" <swapnil.ingle@...fitbricks.com>,
Danil Kipnis <danil.kipnis@...fitbricks.com>,
Jinpu Wang <jinpu.wang@...fitbricks.com>,
Paul McKenney <paulmck@...ux.vnet.ibm.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 01/26] rculist: introduce list_next_or_null_rr_rcu()
On Fri, May 18, 2018 at 6:56 PM, Linus Torvalds
<torvalds@...ux-foundation.org> wrote:
> On Fri, May 18, 2018 at 6:07 AM Roman Pen <roman.penyaev@...fitbricks.com>
> wrote:
>
>> Function is going to be used in transport over RDMA module
>> in subsequent patches.
>
> Does this really merit its own helper macro in a generic header?
>
> It honestly smells more like "just have an inline helper function that is
> specific to rdma" to me. Particularly since it's probably just one specific
> list where you want this oddly specific behavior.
>
> Also, if we really want a round-robin list traversal macro, this isn't the
> way it should be implemented, I suspect, and it probably shouldn't be
> RCU-specific to begin with.
Hi Linus,
Another one list_for_each_entry_rcu()-like macro I am aware of is used in
block/blk-mq-sched.c, is called list_for_each_entry_rcu_rr():
https://elixir.bootlin.com/linux/v4.17-rc5/source/block/blk-mq-sched.c#L370
Can we do something generic with -rr semantics to cover both cases?
--
Roman
>
> Side note: I notice that I should already have been more critical of even
> the much simpler "list_next_or_null_rcu()" macro. The "documentation"
> comment above the macro is pure and utter cut-and-paste garbage.
>
> Paul, mind giving this a look?
>
> Linus
Powered by blists - more mailing lists