[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <2309c311-7378-385d-bf97-57965d36c18b@arm.com>
Date: Fri, 18 Oct 2019 14:51:25 +0100
From: Robin Murphy <robin.murphy@....com>
To: Christoph Hellwig <hch@...radead.org>
Cc: joro@...tes.org, iommu@...ts.linux-foundation.org, maz@...nel.org,
julien.grall@....com, linux-kernel@...r.kernel.org,
Qian Cai <cai@....pw>
Subject: Re: [PATCH] iommu/dma: Relax locking in iommu_dma_prepare_msi()
On 17/10/2019 17:24, Christoph Hellwig wrote:
> On Wed, Oct 16, 2019 at 06:07:36PM +0100, Robin Murphy wrote:
>> @@ -1180,7 +1179,7 @@ int iommu_dma_prepare_msi(struct msi_desc *desc, phys_addr_t msi_addr)
>> struct iommu_domain *domain = iommu_get_domain_for_dev(dev);
>> struct iommu_dma_cookie *cookie;
>> struct iommu_dma_msi_page *msi_page;
>> - unsigned long flags;
>> + static DEFINE_MUTEX(msi_prepare_lock);
>
> Just a style nitpick, but I find locks declared inside functions
> really weird. In addition to that locks not embedded into a structure
> and not directly next to variables or data structures they protect
> really need a comment explaining what they are trying to serialize.
Hmm, the lock itself is merely a glorified comment, it's named for the
operation it protects, its entire existence spans 15 consecutive lines,
and 27% of those lines are dedicated to explaining that it's technically
redundant. Is there *really* anything that isn't clear from the context?
Robin.
Powered by blists - more mailing lists