On 06/12/18 17:01, Konrad Rzeszutek Wilk wrote: > On Mon, Dec 03, 2018 at 10:30:53AM +0100, KarimAllah Ahmed wrote: >> Guest memory can either be directly managed by the kernel (i.e. have a "struct >> page") or they can simply live outside kernel control (i.e. do not have a >> "struct page"). KVM mostly support these two modes, except in a few places >> where the code seems to assume that guest memory must have a "struct page". >> >> This patchset introduces a new mapping interface to map guest memory into host >> kernel memory which also supports PFN-based memory (i.e. memory without 'struct >> page'). It also converts all offending code to this interface or simply >> read/write directly from guest memory. >> >> As far as I can see all offending code is now fixed except the APIC-access page >> which I will handle in a seperate series along with dropping >> kvm_vcpu_gfn_to_page and kvm_vcpu_gpa_to_page from the internal KVM API. >> >> The current implementation of the new API uses memremap to map memory that does >> not have a "struct page". This proves to be very slow for high frequency >> mappings. Since this does not affect the normal use-case where a "struct page" >> is available, the performance of this API will be handled by a seperate patch >> series. > > How (if any) does it affect performance? This is for Amazon's super special userspace sauce. It doesn't affect performance for normal usecases. Paolo