|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen: don't use PCI BIOS service for configuration space accesses
On 13/04/12 13:29, Jan Beulich wrote:
>>>> On 13.04.12 at 14:08, David Vrabel <david.vrabel@xxxxxxxxxx> wrote:
>> From: David Vrabel <david.vrabel@xxxxxxxxxx>
>>
>> The accessing PCI configuration space with the PCI BIOS service does
>> not work in PV guests.
>>
>> This fixes boot on systems without MMCONFIG or where the BIOS hasn't
>> marked the MMCONFIG region as reserved in the e820 map.
>
> ... and where "direct" access doesn't work either? Are there really
> machines where Xen works on but this doesn't work? (Or, in case
> this is disabled in your config, is it really useful to have
> CONFIG_PCI_DIRECT disabled?)
If you have CONFIG_PCI_GOANY (the default) BIOS is preferred over
direct. So this change makes it skip BIOS and fall back to direct.
On the system I had saw the problem, the first call into the BIOS
service would hang the system.
> That's just a comment on the description, the patch itself is fine
> nevertheless (but should probably be sent to the x86 and/or PCI
> maintainers).
I was expecting Konrad to pick it up and forward it to the relevant
maintainer as appropriate. Konrad, would you prefer if I sent to direct?
>> Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>
>
> Acked-by: Jan Beulich <jbeulich@xxxxxxxx>
>
>> Cc: stable@xxxxxxxxxx
>> ---
>> arch/x86/xen/enlighten.c | 5 ++++-
>> 1 files changed, 4 insertions(+), 1 deletions(-)
>>
>> diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
>> index b132ade..dbb5bb7 100644
>> --- a/arch/x86/xen/enlighten.c
>> +++ b/arch/x86/xen/enlighten.c
>> @@ -63,6 +63,7 @@
>> #include <asm/stackprotector.h>
>> #include <asm/hypervisor.h>
>> #include <asm/mwait.h>
>> +#include <asm/pci_x86.h>
>>
>> #ifdef CONFIG_ACPI
>> #include <linux/acpi.h>
>> @@ -1365,7 +1366,9 @@ asmlinkage void __init xen_start_kernel(void)
>> /* Make sure ACS will be enabled */
>> pci_request_acs();
>> }
>> -
>> +
>> + /* PCI BIOS service won't work from a PV guest. */
>> + pci_probe &= ~PCI_PROBE_BIOS;
>>
>> xen_raw_console_write("about to get started...\n");
>>
>> --
>> 1.7.2.5
>>
>>
>> _______________________________________________
>> Xen-devel mailing list
>> Xen-devel@xxxxxxxxxxxxx
>> http://lists.xen.org/xen-devel
>
>
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |