Zachary Amsden wrote:
So the clean fix for this is still even further out. I don't think I
want to hook kmap/unmap as paravirt-ops.
Yes, it seems like overkill.
How about something like adding PARAVIRT_LAZY_FLUSH as an argument to
set_lazy_mode? It would be valid to use at any time, and it would flush
any pending work while still remaining in whatever lazy mode its
currently in. That way kmap_atomic can flush anything pending without
having to muck around with the current lazy state.