On 6/26/26 16:38, Brendan Jackman wrote:
> On Tue Apr 21, 2026 at 2:43 PM UTC, Lorenzo Stoakes wrote:
>> On Fri, Apr 10, 2026 at 03:17:58PM +0000, Kalyazin, Nikita wrote:
>>> From: Nikita Kalyazin <[email protected]>
>>>
>>> Let's convert set_direct_map_*() to take an address instead of a page to
>>> prepare for adding helpers that operate on folios; it will be more
>>> efficient to convert from a folio directly to an address without going
>>> through a page first.
> 
> Why is this more efficient? Isn't it a purely compile-time conversion?
> 
> Indeed in the current implementation folio_address() is
> page_address(&folio->page) so it still goes through a page anyway, no?
> 
> I might be missing context here about how this will look in the
> memdesc future.

Good question. page_address() is really only complicated for highmem. For
non-highmem stuff it's simply derived from the page pfn.

I suspect going page -> pfn will remain as efficient as it currently is (with
vmemmap). For odd cases (SPARSEMEM without VMEMMAP) going through folio->pfn [1]
might be slighty faster.

[1] https://kernelnewbies.org/MatthewWilcox/Memdescs/Path
-- 
Cheers,

David

Reply via email to