Messages in this thread | | | Date | Fri, 29 Feb 2008 14:13:02 +0100 | From | Andrea Arcangeli <> | Subject | Re: [patch 2/6] mmu_notifier: Callbacks to invalidate address ranges |
| |
On Thu, Feb 28, 2008 at 04:59:59PM -0800, Christoph Lameter wrote: > And thus the device driver may stop receiving data on a UP system? It will > never get the ack.
Not sure to follow, sorry.
My idea was:
post the invalidate in the mmio region of the device smp_call_function() while (mmio device wait-bitflag is on);
Instead of the current:
smp_call_function() post the invalidate in the mmio region of the device while (mmio device wait-bitflag is on);
To decrease the wait loop time.
> invalidate_page_before/end could be realized as an > invalidate_range_begin/end on a page sized range?
If we go this route, once you add support to xpmem, you'll have to make the anon_vma lock a mutex too, that would be fine with me though. The main reason invalidate_page exists, is to allow you to leave it as non-sleep-capable even after you make invalidate_range sleep capable, and to implement the mmu_rmap_notifiers sleep capable in all the paths that invalidate_page would be called. That was the strategy you had in your patch. I'll try to drop invalidate_page. I wonder if then you won't need the mmu_rmap_notifiers anymore.
| |