* [PATCH v3 2/2] x86/mmcfg/drhd: Move acpi_mmcfg_init() call before calling acpi_parse_dmar()
@ 2018-08-22 4:53 Zhenzhong Duan
2018-08-22 7:36 ` Roger Pau Monné
0 siblings, 1 reply; 5+ messages in thread
From: Zhenzhong Duan @ 2018-08-22 4:53 UTC (permalink / raw)
To: Xen-Devel
Cc: andrew.cooper3, srinivas.eeda, JBeulich, manoj.gopalasetty,
david.westwood, boris.ostrovsky
pci_conf_read8() needs pci mmcfg mapping to work on multiple pci
segments system such as HPE Superdome-Flex.
Move acpi_mmcfg_init() call in acpi_boot_init() before calling
acpi_parse_dmar() so that when pci_conf_read8() is called in
acpi_parse_dev_scope(), we already have the mapping set up.
mmio_ro_ranges initialization is also moved ahead as it's the only
dependency of pci_mmcfg_arch_enable() need to be moved. Also
checked codes between the old and new call sites to ensure we
don't break anything.
Furthermore MMCFG will continue to not work this early (or
more precisely not at all until Dom0 boot has progressed far
enough) if the range(s) isn't/aren't marked reserved in E820.
Signed-off-by: Zhenzhong Duan <zhenzhong.duan@oracle.com>
Tested-by: Gopalasetty, Manoj <manoj.gopalasetty@hpe.com>
---
xen/arch/x86/acpi/boot.c | 2 ++
xen/arch/x86/setup.c | 8 +++-----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/xen/arch/x86/acpi/boot.c b/xen/arch/x86/acpi/boot.c
index 8e6c96d..e89c2e9 100644
--- a/xen/arch/x86/acpi/boot.c
+++ b/xen/arch/x86/acpi/boot.c
@@ -724,6 +724,8 @@ int __init acpi_boot_init(void)
acpi_table_parse(ACPI_SIG_HPET, acpi_parse_hpet);
+ acpi_mmcfg_init();
+
acpi_dmar_init();
erst_init();
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
index d5cc584..eabb011 100644
--- a/xen/arch/x86/setup.c
+++ b/xen/arch/x86/setup.c
@@ -1493,6 +1493,9 @@ void __init noreturn __start_xen(unsigned long mbi_p)
generic_apic_probe();
+ mmio_ro_ranges = rangeset_new(NULL, "r/o mmio ranges",
+ RANGESETF_prettyprint_hex);
+
acpi_boot_init();
if ( smp_found_config )
@@ -1525,9 +1528,6 @@ void __init noreturn __start_xen(unsigned long mbi_p)
/* Low mappings were only needed for some BIOS table parsing. */
zap_low_mappings();
- mmio_ro_ranges = rangeset_new(NULL, "r/o mmio ranges",
- RANGESETF_prettyprint_hex);
-
init_apic_mappings();
normalise_cpu_order();
@@ -1598,8 +1598,6 @@ void __init noreturn __start_xen(unsigned long mbi_p)
vesa_mtrr_init();
- acpi_mmcfg_init();
-
early_msi_init();
iommu_setup(); /* setup iommu if available */
--
1.7.3
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: [PATCH v3 2/2] x86/mmcfg/drhd: Move acpi_mmcfg_init() call before calling acpi_parse_dmar()
2018-08-22 4:53 [PATCH v3 2/2] x86/mmcfg/drhd: Move acpi_mmcfg_init() call before calling acpi_parse_dmar() Zhenzhong Duan
@ 2018-08-22 7:36 ` Roger Pau Monné
2018-08-22 8:39 ` Zhenzhong Duan
0 siblings, 1 reply; 5+ messages in thread
From: Roger Pau Monné @ 2018-08-22 7:36 UTC (permalink / raw)
To: Zhenzhong Duan
Cc: andrew.cooper3, srinivas.eeda, JBeulich, manoj.gopalasetty,
david.westwood, boris.ostrovsky, Xen-Devel
On Tue, Aug 21, 2018 at 09:53:08PM -0700, Zhenzhong Duan wrote:
> pci_conf_read8() needs pci mmcfg mapping to work on multiple pci
> segments system such as HPE Superdome-Flex.
>
> Move acpi_mmcfg_init() call in acpi_boot_init() before calling
> acpi_parse_dmar() so that when pci_conf_read8() is called in
> acpi_parse_dev_scope(), we already have the mapping set up.
>
> mmio_ro_ranges initialization is also moved ahead as it's the only
> dependency of pci_mmcfg_arch_enable() need to be moved. Also
> checked codes between the old and new call sites to ensure we
> don't break anything.
>
> Furthermore MMCFG will continue to not work this early (or
> more precisely not at all until Dom0 boot has progressed far
> enough) if the range(s) isn't/aren't marked reserved in E820.
>
> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@oracle.com>
> Tested-by: Gopalasetty, Manoj <manoj.gopalasetty@hpe.com>
LGTM:
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
I'm however failing to find patch 1/2 in this series. Could you please
make sure threading is setup correctly?
Thanks, Roger.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v3 2/2] x86/mmcfg/drhd: Move acpi_mmcfg_init() call before calling acpi_parse_dmar()
2018-08-22 7:36 ` Roger Pau Monné
@ 2018-08-22 8:39 ` Zhenzhong Duan
2018-08-22 8:42 ` Roger Pau Monné
0 siblings, 1 reply; 5+ messages in thread
From: Zhenzhong Duan @ 2018-08-22 8:39 UTC (permalink / raw)
To: Roger Pau Monné
Cc: andrew.cooper3, srinivas.eeda, JBeulich, manoj.gopalasetty,
david.westwood, boris.ostrovsky, Xen-Devel
在 2018/8/22 15:36, Roger Pau Monné 写道:
> On Tue, Aug 21, 2018 at 09:53:08PM -0700, Zhenzhong Duan wrote:
>> pci_conf_read8() needs pci mmcfg mapping to work on multiple pci
>> segments system such as HPE Superdome-Flex.
>>
>> Move acpi_mmcfg_init() call in acpi_boot_init() before calling
>> acpi_parse_dmar() so that when pci_conf_read8() is called in
>> acpi_parse_dev_scope(), we already have the mapping set up.
>>
>> mmio_ro_ranges initialization is also moved ahead as it's the only
>> dependency of pci_mmcfg_arch_enable() need to be moved. Also
>> checked codes between the old and new call sites to ensure we
>> don't break anything.
>>
>> Furthermore MMCFG will continue to not work this early (or
>> more precisely not at all until Dom0 boot has progressed far
>> enough) if the range(s) isn't/aren't marked reserved in E820.
>>
>> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@oracle.com>
>> Tested-by: Gopalasetty, Manoj <manoj.gopalasetty@hpe.com>
>
> LGTM:
>
> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
Thanks for reviewing.
>
> I'm however failing to find patch 1/2 in this series. Could you please
> make sure threading is setup correctly?
Hmm, how to make that happen, do you mean sending the two patches in a
bunch?
patch 1/2 is '[PATCH v2 1/2] x86/mmcfg: Rename pt_pci_init() and call it
in acpi_mmcfg_init()"
It's acked in v2, so there is no v3 for patch 1/2.
Thanks
Zhenzhong
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v3 2/2] x86/mmcfg/drhd: Move acpi_mmcfg_init() call before calling acpi_parse_dmar()
2018-08-22 8:39 ` Zhenzhong Duan
@ 2018-08-22 8:42 ` Roger Pau Monné
2018-08-22 9:14 ` Zhenzhong Duan
0 siblings, 1 reply; 5+ messages in thread
From: Roger Pau Monné @ 2018-08-22 8:42 UTC (permalink / raw)
To: Zhenzhong Duan
Cc: andrew.cooper3, srinivas.eeda, JBeulich, manoj.gopalasetty,
david.westwood, boris.ostrovsky, Xen-Devel
On Wed, Aug 22, 2018 at 04:39:05PM +0800, Zhenzhong Duan wrote:
> 在 2018/8/22 15:36, Roger Pau Monné 写道:
> > On Tue, Aug 21, 2018 at 09:53:08PM -0700, Zhenzhong Duan wrote:
> > > pci_conf_read8() needs pci mmcfg mapping to work on multiple pci
> > > segments system such as HPE Superdome-Flex.
> > >
> > > Move acpi_mmcfg_init() call in acpi_boot_init() before calling
> > > acpi_parse_dmar() so that when pci_conf_read8() is called in
> > > acpi_parse_dev_scope(), we already have the mapping set up.
> > >
> > > mmio_ro_ranges initialization is also moved ahead as it's the only
> > > dependency of pci_mmcfg_arch_enable() need to be moved. Also
> > > checked codes between the old and new call sites to ensure we
> > > don't break anything.
> > >
> > > Furthermore MMCFG will continue to not work this early (or
> > > more precisely not at all until Dom0 boot has progressed far
> > > enough) if the range(s) isn't/aren't marked reserved in E820.
> > >
> > > Signed-off-by: Zhenzhong Duan <zhenzhong.duan@oracle.com>
> > > Tested-by: Gopalasetty, Manoj <manoj.gopalasetty@hpe.com>
> >
> > LGTM:
> >
> > Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
> Thanks for reviewing.
> >
> > I'm however failing to find patch 1/2 in this series. Could you please
> > make sure threading is setup correctly?
> Hmm, how to make that happen, do you mean sending the two patches in a
> bunch?
> patch 1/2 is '[PATCH v2 1/2] x86/mmcfg: Rename pt_pci_init() and call it in
> acpi_mmcfg_init()"
>
> It's acked in v2, so there is no v3 for patch 1/2.
Oh, I see. So you have two choices here: either send patch 1/2 with
the Ack together with patch 2/2, or just drop the 2/2 prefix and send
the patch alone. But sending v3 2/2 without v3 1/2 makes people think
there's a v3 1/2 lost somewhere IMO.
Thanks, Roger.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v3 2/2] x86/mmcfg/drhd: Move acpi_mmcfg_init() call before calling acpi_parse_dmar()
2018-08-22 8:42 ` Roger Pau Monné
@ 2018-08-22 9:14 ` Zhenzhong Duan
0 siblings, 0 replies; 5+ messages in thread
From: Zhenzhong Duan @ 2018-08-22 9:14 UTC (permalink / raw)
To: Roger Pau Monné
Cc: andrew.cooper3, srinivas.eeda, JBeulich, manoj.gopalasetty,
david.westwood, boris.ostrovsky, Xen-Devel
在 2018/8/22 16:42, Roger Pau Monné 写道:
> On Wed, Aug 22, 2018 at 04:39:05PM +0800, Zhenzhong Duan wrote:
>> 在 2018/8/22 15:36, Roger Pau Monné 写道:
>>> On Tue, Aug 21, 2018 at 09:53:08PM -0700, Zhenzhong Duan wrote:
>>>> pci_conf_read8() needs pci mmcfg mapping to work on multiple pci
>>>> segments system such as HPE Superdome-Flex.
>>>>
>>>> Move acpi_mmcfg_init() call in acpi_boot_init() before calling
>>>> acpi_parse_dmar() so that when pci_conf_read8() is called in
>>>> acpi_parse_dev_scope(), we already have the mapping set up.
>>>>
>>>> mmio_ro_ranges initialization is also moved ahead as it's the only
>>>> dependency of pci_mmcfg_arch_enable() need to be moved. Also
>>>> checked codes between the old and new call sites to ensure we
>>>> don't break anything.
>>>>
>>>> Furthermore MMCFG will continue to not work this early (or
>>>> more precisely not at all until Dom0 boot has progressed far
>>>> enough) if the range(s) isn't/aren't marked reserved in E820.
>>>>
>>>> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@oracle.com>
>>>> Tested-by: Gopalasetty, Manoj <manoj.gopalasetty@hpe.com>
>>>
>>> LGTM:
>>>
>>> Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
>> Thanks for reviewing.
>>>
>>> I'm however failing to find patch 1/2 in this series. Could you please
>>> make sure threading is setup correctly?
>> Hmm, how to make that happen, do you mean sending the two patches in a
>> bunch?
>> patch 1/2 is '[PATCH v2 1/2] x86/mmcfg: Rename pt_pci_init() and call it in
>> acpi_mmcfg_init()"
>>
>> It's acked in v2, so there is no v3 for patch 1/2.
>
> Oh, I see. So you have two choices here: either send patch 1/2 with
> the Ack together with patch 2/2, or just drop the 2/2 prefix and send
> the patch alone. But sending v3 2/2 without v3 1/2 makes people think
> there's a v3 1/2 lost somewhere IMO.
Understand, I'll resend the two again.
Thanks
Zhenzhong
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-08-22 9:14 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-22 4:53 [PATCH v3 2/2] x86/mmcfg/drhd: Move acpi_mmcfg_init() call before calling acpi_parse_dmar() Zhenzhong Duan
2018-08-22 7:36 ` Roger Pau Monné
2018-08-22 8:39 ` Zhenzhong Duan
2018-08-22 8:42 ` Roger Pau Monné
2018-08-22 9:14 ` Zhenzhong Duan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).