On 2022-04-29 08:59:26 [-0700], Ira Weiny wrote: > I think some discussion needs to happen around this API. > > Highmem has little use. I don't think anyone disagrees with Linus there. > (Although I think there are still a few users out there.) arm32 is still built and they have sometimes 1 - 2 GiB of memory. > kmap may be a poor name for an API without the highmem functionality. But > perhaps not. One could interpret it to mean simply getting the kernel mapping > of the page rather than creating one. After all that is what 64bit has done > all along. > > This interpretation helps when you consider features which attempt to layer the > direct map with additional protections like PKS.[1] Those protections mean > that a simple page_address() is insufficient to access the direct map. > > As far as calling kmap() and kmap_atomic() deprecated I'm ok with that if the > community is. > > The current kmap() call sites need work and Fabio's work on auditing them is > extremely helpful. That said, if we officially deprecate kmap_atomic() then > those sites could be added to the list for rework. Maybe I oversee something obvious but there is no problem with removing kmap_atomic*() and keeping only kmap_local*() around, is there? I never intended to deprecated kmap(), only kmap_atomic*() in favour of kmap_local*(). > Ira Sebastian