[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Xen 4.0 crashes with pvops kernel
>>> On 15.06.10 at 15:20, "Jan Beulich" <JBeulich@xxxxxxxxxx> wrote: >>>> On 15.06.10 at 14:56, Keir Fraser <keir.fraser@xxxxxxxxxxxxx> wrote: >> On 15/06/2010 13:50, "Jan Beulich" <JBeulich@xxxxxxxxxx> wrote: >> >>> But even if we verify that the references come from some ACPI >>> method(s), likely the only way to address this is to fix the kernel >>> side error handling. >>> >>> Keir, assuming these are reads only, would it make sense to permit >>> Dom0 to map the IO-APIC space read-only? Perhaps even >>> transparently converting writeable mappings to read-only ones >>> (since drivers/acpi/osl.c tries to establish writeable mappings >>> irrespective of the actual needs)? The obvious danger in doing >>> so is that going forward there may appear fields in that page >>> reads of which aren't side effect free... >> >> Well, how come it works with other Linux kernels -- presumably they have >> some extra error handling in the ACPI subsystem? Shouldn't that just be >> added to this kernel? > > I'm rather suspecting there's new code (compared to 2.6.18) that's > lacking proper error handling, though I didn't look in detail so far. > > Hmm, looking a little more closely it seems they indeed try to write > to that space - this we for sure can't allow. I'll see if I can follow > the code path (unfortunately the stack trace is an imprecise one). Actually, that's a difference to non-pv-ops that I strongly believe should be fixed: While in the traditional kernel __direct_remap_pfn_range() is used to establish I/O memory mappings (and hence there is a way to propagate errors), the pv-ops kernel appears to use ioremap_page_range() - just like native - which can only return -ENOMEM (upon page table allocation failure), due to the lack of a return value from set_pte_at(). But then again I must be missing something here, since xen_set_pte_at() falls back to xen_set_pte() if the hypercall it tries first fails, and that one would fault when establishing the mapping, not when trying to first use it. Jeremy? Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |