[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231219051648.GA32634@lst.de>
Date: Tue, 19 Dec 2023 06:16:48 +0100
From: Christoph Hellwig <hch@....de>
To: Daniel Wagner <dwagner@...e.de>
Cc: linux-nvme@...ts.infradead.org, linux-kernel@...r.kernel.org,
Christoph Hellwig <hch@....de>, Sagi Grimberg <sagi@...mberg.me>,
Keith Busch <kbusch@...nel.org>,
James Smart <james.smart@...adcom.com>,
Hannes Reinecke <hare@...e.de>
Subject: Re: [PATCH v3 08/16] nvmet-fc: untangle cross refcounting objects
On Mon, Dec 18, 2023 at 04:30:56PM +0100, Daniel Wagner wrote:
> The live time of the queues are strictly bound to the lifetime of an
> + struct nvmet_fc_tgt_queue *_queues[NVMET_NR_QUEUES + 1];
> struct nvmet_fc_tgt_queue __rcu *queues[NVMET_NR_QUEUES + 1];
For magic prefixes we use __, not _ in Linux. But having two arrays
of queues right next to each other, once with rcu annotation and one
not rings a bit far warning bell to me. Why do we have both? When
are we supposed to use either? Why is FC different from rest?
I really don't have any good answers as I don't know the code in the
FC transport very well, but I think this needs more work.
Powered by blists - more mailing lists