Re: [kvm-unit-tests PATCH v5 00/12] PCI bus support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Alex,

For v7 (which I'm sure will be the last :-) please repost the whole
series and, if you have a publicly accessible git tree, provide me a
branch from which I can pull it from. If you don't have a tree, it's
no biggy, I'll just grab the patches from mutt.

Thanks,
drew


On Tue, Jul 19, 2016 at 02:52:57PM +0200, Alexander Gordeev wrote:
> Hi Andrew,
> 
> This is 5th version of PCI support. Changes since v4 are mainly addressing
> nits and a rework of pci_bar_addr() function. The biggest change - the PCI
> test succeeds on arm, aarch64, i386 and x86_64 (I am not posting pci-testdev
> enablement for x86 though).
> 
> There are few changes (some of them to already Reviewed-by patches) worth
> a notice - here are the interdiffs commented:
> 
> [08/12] pci: Add pci_print(); pci_print() function:
>   - possibile devices with unimplemented gap BARs are printed correctly;
>   - pci_bar_size() is called once;
> 
> diff -u b/lib/pci.c b/lib/pci.c
> --- b/lib/pci.c
> +++ b/lib/pci.c
> @@ -146,14 +146,15 @@
>  		return;
>  
>  	for (i = 0; i < 6; i++) {
> -		phys_addr_t start, end;
> +		phys_addr_t size, start, end;
>  		uint32_t bar;
>  
> -		if (!pci_bar_is_valid(dev, i))
> -			break;
> +		size = pci_bar_size(dev, i);
> +		if (!size)
> +			continue;
>  
>  		start = pci_bar_get_addr(dev, i);
> -		end = start + pci_bar_size(dev, i) - 1;
> +		end = start + size - 1;
>  
>  		if (pci_bar_is64(dev, i)) {
>  			printf("\tBAR#%d,%d [%" PRIx64 "-%" PRIx64 " ",
> 
> [09/12] pci: Add generic ECAM host support; pci_probe() function:
>   - possibile devices with unimplemented gap BARs are scanned correctly;
> 
> @@ -276,7 +290,7 @@
>  +
>  +			size = pci_bar_size(dev, i);
>  +			if (!size)
> -+				break;
> ++				continue;
>  +
>  +			bar = pci_bar_get(dev, i);
>  +			addr = pci_alloc_resource(bar, size);
> 
> [11/12] pci: Add pci-testdev PCI bus test device; pci_testdev_one() function:
>   - no-eventfd vs eventfd accesses (clarified by Paolo on qemu-devel list)
>     are handled now;
> 
> @@ -124,7 +124,11 @@
>  		}
>  	}
>  
> -	return (int)ops->io_readl(&test->count) == nr_writes;
> +	count = ops->io_readl(&test->count);
> +	if (!count)
> +		return true;
> +
> +	return (int)count == nr_writes;
>  }
>  
>  void pci_testdev_print(struct pci_test_dev_hdr *test,
> 
> 
> Alexander Gordeev (12):
>   [01/12] pci: Fix coding style in generic PCI files
>   [02/12] pci: x86: Rename pci_config_read() to pci_config_readl()
>   [03/12] pci: x86: Add remaining PCI configuration space accessors
>   [04/12] pci: Rework pci_bar_addr()
>   [05/12] pci: Factor out pci_bar_get()
>   [06/12] pci: Add pci_bar_set_addr()
>   [07/12] pci: Add pci_dev_exists()
>   [08/12] pci: Add pci_print()
>   [09/12] pci: Add generic ECAM host support
>   [10/12] arm/arm64: pci: Add PCI bus operation test
>   [11/12] pci: Add pci-testdev PCI bus test device
>   [12/12] arm/arm64: pci: Add pci-testdev PCI device operation test
> 
>  arm/Makefile.common               |   6 +-
>  arm/pci-test.c                    |  31 ++++
>  arm/run                           |   7 +-
>  lib/arm/asm/pci.h                 |  11 ++
>  lib/arm64/asm/pci.h               |   1 +
>  lib/asm-generic/pci-host-bridge.h |  26 ++++
>  lib/pci-host-generic.c            | 295 ++++++++++++++++++++++++++++++++++++++
>  lib/pci-host-generic.h            |  46 ++++++
>  lib/pci-testdev.c                 | 188 ++++++++++++++++++++++++
>  lib/pci.c                         | 201 +++++++++++++++++++++++---
>  lib/pci.h                         |  34 ++++-
>  lib/x86/asm/pci.h                 |  31 +++-
>  x86/vmexit.c                      |   4 +-
>  13 files changed, 853 insertions(+), 28 deletions(-)
>  create mode 100644 arm/pci-test.c
>  create mode 100644 lib/arm/asm/pci.h
>  create mode 100644 lib/arm64/asm/pci.h
>  create mode 100644 lib/asm-generic/pci-host-bridge.h
>  create mode 100644 lib/pci-host-generic.c
>  create mode 100644 lib/pci-host-generic.h
>  create mode 100644 lib/pci-testdev.c
> 
> -- 
> 1.8.3.1
> 
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux