L_PTE_MT_BUFFERABLE / device ordered memory

Prof. Michael Taylor prof.taylor at gmail.com
Tue Jan 3 10:49:52 PST 2023


Hi Russell,

Thanks for your reply! This is very helpful.

So it sounds like what I would like to do is to leave most of the
operation of the kernel the same, but have a select region of address
space marked as L_PTE_MT_DEV_SHARED instead of L_PTE_MT_DEV_UNCACHED.
Would that be the correct one to use for device ordered memory?

And assuming yes, would it be suffice to modify phys_mem_access_prot
so that it checks (pfn << PAGE_SIZE) to see if it is in the target
range of physical memory, and then return pgprot_device() rather than
pgprot_noncached() for that region?

Is there a better way for me to do this than this brute force way (I
noticed you alluded to this in this post:
https://www.spinics.net/lists/arm-kernel/msg75913.html)?


M



More information about the linux-arm-kernel mailing list