Messages in this thread | | | Date | Fri, 05 Oct 2007 13:35:31 -0700 | From | Jeremy Fitzhardinge <> | Subject | Re: race with page_referenced_one->ptep_test_and_clear_young and pagetable setup/pulldown |
| |
Keir Fraser wrote: > The PREEMPT_BITS limitation is a good argument for at least taking the pte > locks in small batches though (small batches is preferable to one-by-one > since we will want to batch the make-readonly-and-pin hypercall requests to > amortise the cost of the hypervisor trap).
Hm, I don't see how we can avoid holding locks for the whole pagetable at once. We need to hold the locks from between marking a particular pte page RO until the whole pagetable is pinned; if we don't, pte updates can come in from other cpus, which will fault on the RO but won't be fixed up by Xen.
Could we avoid it by doing a series of partial pins, locking and unlocking each one in the process, and then pin the whole pagetable?
J - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |