[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5ffc63e9-19bd-4e12-92fc-57fe12d10f4f@samsung.com>
Date: Fri, 12 Sep 2025 00:23:17 +0200
From: Marek Szyprowski <m.szyprowski@...sung.com>
To: Leon Romanovsky <leon@...nel.org>
Cc: Jason Gunthorpe <jgg@...dia.com>, Abdiel Janulgue
<abdiel.janulgue@...il.com>, Alexander Potapenko <glider@...gle.com>, Alex
Gaynor <alex.gaynor@...il.com>, Andrew Morton <akpm@...ux-foundation.org>,
Christoph Hellwig <hch@....de>, Danilo Krummrich <dakr@...nel.org>, David
Hildenbrand <david@...hat.com>, iommu@...ts.linux.dev, Jason Wang
<jasowang@...hat.com>, Jens Axboe <axboe@...nel.dk>, Joerg Roedel
<joro@...tes.org>, Jonathan Corbet <corbet@....net>, Juergen Gross
<jgross@...e.com>, kasan-dev@...glegroups.com, Keith Busch
<kbusch@...nel.org>, linux-block@...r.kernel.org, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
linux-nvme@...ts.infradead.org, linuxppc-dev@...ts.ozlabs.org,
linux-trace-kernel@...r.kernel.org, Madhavan Srinivasan
<maddy@...ux.ibm.com>, Masami Hiramatsu <mhiramat@...nel.org>, Michael
Ellerman <mpe@...erman.id.au>, "Michael S. Tsirkin" <mst@...hat.com>, Miguel
Ojeda <ojeda@...nel.org>, Robin Murphy <robin.murphy@....com>,
rust-for-linux@...r.kernel.org, Sagi Grimberg <sagi@...mberg.me>, Stefano
Stabellini <sstabellini@...nel.org>, Steven Rostedt <rostedt@...dmis.org>,
virtualization@...ts.linux.dev, Will Deacon <will@...nel.org>,
xen-devel@...ts.xenproject.org
Subject: Re: [PATCH v6 03/16] dma-debug: refactor to use physical addresses
for page mapping
On 10.09.2025 07:26, Leon Romanovsky wrote:
> On Tue, Sep 09, 2025 at 10:37:48PM +0300, Leon Romanovsky wrote:
>> On Tue, Sep 09, 2025 at 04:27:31PM +0300, Leon Romanovsky wrote:
>>> From: Leon Romanovsky <leonro@...dia.com>
>> <...>
>>
>>> include/linux/page-flags.h | 1 +
>> <...>
>>
>>> --- a/include/linux/page-flags.h
>>> +++ b/include/linux/page-flags.h
>>> @@ -614,6 +614,7 @@ FOLIO_FLAG(dropbehind, FOLIO_HEAD_PAGE)
>>> * available at this point.
>>> */
>>> #define PageHighMem(__p) is_highmem_idx(page_zonenum(__p))
>>> +#define PhysHighMem(__p) (PageHighMem(phys_to_page(__p)))
>> This was a not so great idea to add PhysHighMem() because of "else"
>> below which unfolds to maze of macros and automatically generated
>> functions with "static inline int Page##uname ..." signature.
>>
>>> #define folio_test_highmem(__f) is_highmem_idx(folio_zonenum(__f))
>>> #else
>>> PAGEFLAG_FALSE(HighMem, highmem)
> After sleeping over it, the following hunk will help:
>
> diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
> index dfbc4ba86bba2..2a1f346178024 100644
> --- a/include/linux/page-flags.h
> +++ b/include/linux/page-flags.h
> @@ -614,11 +614,11 @@ FOLIO_FLAG(dropbehind, FOLIO_HEAD_PAGE)
> * available at this point.
> */
> #define PageHighMem(__p) is_highmem_idx(page_zonenum(__p))
> -#define PhysHighMem(__p) (PageHighMem(phys_to_page(__p)))
> #define folio_test_highmem(__f) is_highmem_idx(folio_zonenum(__f))
> #else
> PAGEFLAG_FALSE(HighMem, highmem)
> #endif
> +#define PhysHighMem(__p) (PageHighMem(phys_to_page(__p)))
>
> /* Does kmap_local_folio() only allow access to one page of the folio? */
> #ifdef CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP
Okay, I will add this fixup while applying the patches.
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland
Powered by blists - more mailing lists