[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <7df769a2-4dbb-ade4-532f-3a61197c14d1@linux.vnet.ibm.com>
Date: Tue, 12 Jul 2016 13:09:38 +0800
From: Yongji Xie <xyjxie@...ux.vnet.ibm.com>
To: linux-kernel@...r.kernel.org, linux-pci@...r.kernel.org,
linuxppc-dev@...ts.ozlabs.org, linux-doc@...r.kernel.org,
bhelgaas@...gle.com
Cc: nikunj@...ux.vnet.ibm.com, zhong@...ux.vnet.ibm.com,
corbet@....net, aik@...abs.ru, gwshan@...ux.vnet.ibm.com,
warrier@...ux.vnet.ibm.com, alex.williamson@...hat.com,
paulus@...ba.org
Subject: Re: [PATCH v3 0/7] PCI: Add support for enforcing all MMIO BARs not
to share PAGE_SIZE
Hi Bjorn,
Any comment on V3?
Thanks,
Yongji
On 2016/6/30 18:53, Yongji Xie wrote:
> This series aims to add an option for PCI resource allocator to
> force BARs not to share PAGE_SIZE. This would make sense to VFIO
> driver. Because current VFIO implementation disallows to mmap
> sub-page(size < PAGE_SIZE) MMIO BARs which may share the same page
> with other BARs for security reasons. Thus, we have to handle mmio
> access to these BARs in QEMU emulation rather than in guest which
> will cause some performance loss.
>
> To achieve that, we would like to make use of the existing
> resource_alignment kernel parameter and force a minimum alignment
> of PAGE_SIZE. It's flexible. And we can enable it by default on
> some archs which may easily hit the performance issue because of
> their 64K page.
>
> In this series, patch 1,2,3 fixed bugs of using resource_alignment;
> patch 4,5 tried to add a new option for resource_alignment to use
> IORESOURCE_STARTALIGN to specify the alignment of PCI BARs; patch 6
> modified resource_alignment to support syntax which can be used to
> enforce the alignment of all MMIO BARs to be at least PAGE_SIZE;
> patch 7 enabled this feature by default on PowerNV platform.
>
> Changelog v3:
> - Ignore enforced alignment to fixed BARs
> - Fix issue that disabling memory decoding when reassigning the alignment
> - Only enable default alignment on PowerNV platform
>
> Changelog v2:
> - Ignore enforced alignment to VF BARs on pci_reassigndev_resource_alignment()
>
> Yongji Xie (7):
> PCI: Ignore enforced alignment when kernel uses existing firmware setup
> PCI: Ignore enforced alignment to VF BARs
> PCI: Do not disable memory decoding in pci_reassigndev_resource_alignment()
> PCI: Add a new option for resource_alignment to reassign alignment
> PCI: Do not use IORESOURCE_STARTALIGN to identify bridge resources
> PCI: Add support for enforcing all MMIO BARs to be page aligned
> PCI: Add a macro to set default alignment for all PCI devices
>
> Documentation/kernel-parameters.txt | 7 +-
> arch/powerpc/include/asm/pci.h | 4 ++
> drivers/pci/pci.c | 123 +++++++++++++++++++++++++++--------
> drivers/pci/setup-bus.c | 9 ++-
> 4 files changed, 111 insertions(+), 32 deletions(-)
>
Powered by blists - more mailing lists