Messages in this thread | | | From | Rob Clark <> | Date | Thu, 8 Aug 2019 09:44:32 -0700 | Subject | Re: [PATCH 1/2] drm: add cache support for arm64 |
| |
On Thu, Aug 8, 2019 at 12:59 AM Christoph Hellwig <hch@lst.de> wrote: > > On Wed, Aug 07, 2019 at 10:30:04AM -0700, Rob Clark wrote: > > So, we do end up using GFP_HIGHUSER, which appears to get passed thru > > when shmem gets to the point of actually allocating pages.. not sure > > if that just ends up being a hint, or if it guarantees that we don't > > get something in the linear map. > > > > (Bear with me while I "page" this all back in.. last time I dug thru > > the shmem code was probably pre-armv8, or at least before I had any > > armv8 hw) > > GFP_HIGHUSER basically just means that this is an allocation that could > dip into highmem, in which case it would not have a kernel mapping. > This can happen on arm + LPAE, but not on arm64.
Just a dumb question, but why is *all* memory in the linear map on arm64? It would seem useful to have a source of pages that is not in the linear map. I guess it is mapped as huge pages (or something larger than 4k pages)?
Any recommended reading to understand how/why the kernel address space is setup the way it is (so I can ask fewer dumb questions)?
BR, -R
| |