Messages in this thread |  | | Date | Tue, 21 Oct 2014 10:11:43 +0200 | From | Paolo Bonzini <> | Subject | Re: [PATCH 2/4] mm: introduce new VM_NOZEROPAGE flag |
| |
On 10/21/2014 08:11 AM, Martin Schwidefsky wrote: >> I agree with Dave (I thought I disagreed, but I changed my mind while >> writing down my thoughts). Just define mm_forbids_zeropage in >> arch/s390/include/asm, and make it return mm->context.use_skey---with a >> comment explaining how this is only for processes that use KVM, and then >> only for guests that use storage keys. > > The mm_forbids_zeropage() sure will work for now, but I think a vma flag > is the better solution. This is analog to VM_MERGEABLE or VM_NOHUGEPAGE, > the best solution would be to only mark those vmas that are mapped to > the guest. That we have not found a way to do that yet in a sensible way > does not change the fact that "no-zero-page" is a per-vma property, no?
I agree it should be per-VMA. However, right now the code is complicated unnecessarily by making it a per-VMA flag. Also, setting the flag per VMA should probably be done in kvm_arch_prepare_memory_region together with some kind of storage key notifier. This is not very much like Dominik's patch. All in all, mm_forbids_zeropage() provides a non-intrusive and non-controversial way to fix the bug. Later on, switching to vma_forbids_zeropage() will be trivial as far as mm/ code is concerned.
> But if you insist we go with the mm_forbids_zeropage() until we find a > clever way to distinguish the guest vmas from the qemu ones.
Yeah, I think it is simpler for now.
Paolo
|  |