[ofa-general] Re: [PATCH][RFC] pte notifiers -- support for external page tables
Avi Kivity
avi at qumranet.com
Thu Sep 6 06:18:23 PDT 2007
[ugh, what happened to the cc-list?]
Andi Kleen wrote:
> Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w at public.gmane.org> writes:
>
>> pte notifiers are different from paravirt_ops: they extend the normal
>> page tables rather than replace them; and they provide high-level information
>> such as the vma and the virtual address for the driver to use.
>>
>
> Sounds like a locking horror to me. To do anything with page tables
> you need locks. Both for the kernel page tables and for your new tables.
>
> What happens when people add all
> things of complicated operations in these notifiers? That will likely
> happen and then everytime you change something in VM code they
> will break. This has the potential to increase the cost of maintaining
> VM code considerably, which would be a bad thing.
>
> This is quite different from paravirt ops because low level pvops
> can typically run lockless by just doing some kind of hypercall directly.
> But that won't work for maintaining your custom page tables.
>
This is a real problem. I don't have a solution yet.
Obviously that needs to be addressed before something like this can go
in; but as it's been done for the quadrics driver, presumably it is doable.
--
Any sufficiently difficult bug is indistinguishable from a feature.
More information about the general
mailing list