Re: How to reduce PCI initialization from 5 s (1.5 s adding them to IOMMU groups)

2021-11-05 Thread Bjorn Helgaas
On Fri, Nov 05, 2021 at 12:56:09PM +0100, Paul Menzel wrote:
> Dear Linux folks,
> 
> 
> On a PowerEdge T440/021KCD, BIOS 2.11.2 04/22/2021, Linux 5.10.70 takes
> almost five seconds to initialize PCI. According to the timestamps, 1.5 s
> are from assigning the PCI devices to the 142 IOMMU groups.
> 
> ```
> $ lspci | wc -l
> 281
> $ dmesg
> […]
> [2.918411] PCI: Using host bridge windows from ACPI; if necessary, use
> "pci=nocrs" and report a bug
> [2.933841] ACPI: Enabled 5 GPEs in block 00 to 7F
> [2.973739] ACPI: PCI Root Bridge [PC00] (domain  [bus 00-16])
> [2.980398] acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM
> ClockPM Segments MSI HPX-Type3]
> [2.989457] acpi PNP0A08:00: _OSC: platform does not support [LTR]
> [2.995451] acpi PNP0A08:00: _OSC: OS now controls [PME PCIeCapability]
> [3.001394] acpi PNP0A08:00: FADT indicates ASPM is unsupported, using
> BIOS configuration
> [3.010511] PCI host bridge to bus :00
> […]
> [6.233508] system 00:05: [io  0x1000-0x10fe] has been reserved
> [6.239420] system 00:05: Plug and Play ACPI device, IDs PNP0c02 (active)
> [6.239906] pnp: PnP ACPI: found 6 devices

For ~280 PCI devices, (6.24-2.92)/280 = 0.012 s/dev.  On my laptop I
have about (.66-.37)/36 = 0.008 s/dev (on v5.4), so about the same
ballpark.

Faster would always be better, of course.  I assume this is not really
a regression?

> [6.989016] pci :d7:05.0: disabled boot interrupts on device
> [8086:2034]
> [6.996063] PCI: CLS 0 bytes, default 64
> [7.08] Trying to unpack rootfs image as initramfs...
> [7.065281] Freeing initrd memory: 5136K
> […]
> [7.079098] DMAR: dmar7: Using Queued invalidation
> [7.083983] pci :00:00.0: Adding to iommu group 0
> […]
> [8.537808] pci :d7:17.1: Adding to iommu group 141

I don't have this iommu stuff turned on and don't know what's
happening here.

> Is there anything that could be done to reduce the time?
> 
> 
> Kind regards,
> 
> Paul
___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Re: How to reduce PCI initialization from 5 s (1.5 s adding them to IOMMU groups)s

2021-11-05 Thread Paul Menzel

Dear Linux folks,


Am 05.11.21 um 12:56 schrieb Paul Menzel:

On a PowerEdge T440/021KCD, BIOS 2.11.2 04/22/2021, Linux 5.10.70 takes 
almost five seconds to initialize PCI. According to the timestamps, 1.5 
s are from assigning the PCI devices to the 142 IOMMU groups.


```
$ lspci | wc -l
281
$ dmesg
[…]
[    2.918411] PCI: Using host bridge windows from ACPI; if necessary, use 
"pci=nocrs" and report a bug
[    2.933841] ACPI: Enabled 5 GPEs in block 00 to 7F
[    2.973739] ACPI: PCI Root Bridge [PC00] (domain  [bus 00-16])
[    2.980398] acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM 
Segments MSI HPX-Type3]
[    2.989457] acpi PNP0A08:00: _OSC: platform does not support [LTR]
[    2.995451] acpi PNP0A08:00: _OSC: OS now controls [PME PCIeCapability]
[    3.001394] acpi PNP0A08:00: FADT indicates ASPM is unsupported, 
using BIOS configuration

[    3.010511] PCI host bridge to bus :00
[…]
[    6.233508] system 00:05: [io  0x1000-0x10fe] has been reserved
[    6.239420] system 00:05: Plug and Play ACPI device, IDs PNP0c02 (active)
[    6.239906] pnp: PnP ACPI: found 6 devices
[…]
[    6.989016] pci :d7:05.0: disabled boot interrupts on device [8086:2034]
[    6.996063] PCI: CLS 0 bytes, default 64
[    7.08] Trying to unpack rootfs image as initramfs...
[    7.065281] Freeing initrd memory: 5136K
[…]
[    7.079098] DMAR: dmar7: Using Queued invalidation
[    7.083983] pci :00:00.0: Adding to iommu group 0
[…]
[    8.537808] pci :d7:17.1: Adding to iommu group 141
[    8.571191] DMAR: Intel(R) Virtualization Technology for Directed I/O
[    8.577618] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[…]
```

Is there anything that could be done to reduce the time?


I created an issue at the Kernel.org Bugzilla, and attached the output 
of `dmesg` there [1].



Kind regards,

Paul


[1]: https://bugzilla.kernel.org/show_bug.cgi?id=214953
___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

How to reduce PCI initialization from 5 s (1.5 s adding them to IOMMU groups)

2021-11-05 Thread Paul Menzel

Dear Linux folks,


On a PowerEdge T440/021KCD, BIOS 2.11.2 04/22/2021, Linux 5.10.70 takes 
almost five seconds to initialize PCI. According to the timestamps, 1.5 
s are from assigning the PCI devices to the 142 IOMMU groups.


```
$ lspci | wc -l
281
$ dmesg
[…]
[2.918411] PCI: Using host bridge windows from ACPI; if necessary, 
use "pci=nocrs" and report a bug

[2.933841] ACPI: Enabled 5 GPEs in block 00 to 7F
[2.973739] ACPI: PCI Root Bridge [PC00] (domain  [bus 00-16])
[2.980398] acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM 
ClockPM Segments MSI HPX-Type3]

[2.989457] acpi PNP0A08:00: _OSC: platform does not support [LTR]
[2.995451] acpi PNP0A08:00: _OSC: OS now controls [PME PCIeCapability]
[3.001394] acpi PNP0A08:00: FADT indicates ASPM is unsupported, 
using BIOS configuration

[3.010511] PCI host bridge to bus :00
[…]
[6.233508] system 00:05: [io  0x1000-0x10fe] has been reserved
[6.239420] system 00:05: Plug and Play ACPI device, IDs PNP0c02 (active)
[6.239906] pnp: PnP ACPI: found 6 devices
[…]
[6.989016] pci :d7:05.0: disabled boot interrupts on device 
[8086:2034]

[6.996063] PCI: CLS 0 bytes, default 64
[7.08] Trying to unpack rootfs image as initramfs...
[7.065281] Freeing initrd memory: 5136K
[…]
[7.079098] DMAR: dmar7: Using Queued invalidation
[7.083983] pci :00:00.0: Adding to iommu group 0
[…]
[8.537808] pci :d7:17.1: Adding to iommu group 141
[8.571191] DMAR: Intel(R) Virtualization Technology for Directed I/O
[8.577618] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[…]
```

Is there anything that could be done to reduce the time?


Kind regards,

Paul
___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Re: [git pull] IOMMU Updates for Linux v5.16

2021-11-05 Thread Lu Baolu

On 2021/11/5 15:35, Joerg Roedel wrote:

On Thu, Nov 04, 2021 at 11:10:53AM -0700, Linus Torvalds wrote:

That too seems to be stale and unused since commit 9bfecd058339
("x86/cpufeatures: Force disable X86_FEATURE_ENQCMD and remove
update_pasid()")

I left it alone because I didn't want to do any extra development in
the merge commit itself, but it looks to me like there's some room for
more cleanips. No?


Yes, looks like this define is unused now. I talk to Baolu whether this
can be cleaned up too, Baolu?


Yes.

PASID_DISABLED is unused after

commit 9bfecd058339 ("x86/cpufeatures: Force disable X86_FEATURE_ENQCMD
and remove update_pasid()").

and

commit 00ecd5401349a ("iommu/vt-d: Clean up unused PASID updating
functions")

Best regards,
baolu
___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu


Re: [git pull] IOMMU Updates for Linux v5.16

2021-11-05 Thread Joerg Roedel
On Thu, Nov 04, 2021 at 11:10:53AM -0700, Linus Torvalds wrote:
> That too seems to be stale and unused since commit 9bfecd058339
> ("x86/cpufeatures: Force disable X86_FEATURE_ENQCMD and remove
> update_pasid()")
> 
> I left it alone because I didn't want to do any extra development in
> the merge commit itself, but it looks to me like there's some room for
> more cleanips. No?

Yes, looks like this define is unused now. I talk to Baolu whether this
can be cleaned up too, Baolu?

Thanks,

Joerg
___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu