lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20241018183624.GA756809@bhelgaas>
Date: Fri, 18 Oct 2024 13:36:24 -0500
From: Bjorn Helgaas <helgaas@...nel.org>
To: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
Cc: Niklas Schnelle <schnelle@...ux.ibm.com>,
	Gerald Schaefer <gerald.schaefer@...ux.ibm.com>,
	Heiko Carstens <hca@...ux.ibm.com>,
	Vasily Gorbik <gor@...ux.ibm.com>,
	Alexander Gordeev <agordeev@...ux.ibm.com>,
	Christian Borntraeger <borntraeger@...ux.ibm.com>,
	Sven Schnelle <svens@...ux.ibm.com>,
	Bjorn Helgaas <bhelgaas@...gle.com>,
	Thomas Gleixner <tglx@...utronix.de>,
	Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
	Dave Hansen <dave.hansen@...ux.intel.com>, x86@...nel.org,
	"H. Peter Anvin" <hpa@...or.com>, linux-s390@...r.kernel.org,
	linux-kernel@...r.kernel.org, linux-pci@...r.kernel.org
Subject: Re: [PATCH 1/3] PCI: Remove unused PCI_SUBTRACTIVE_DECODE

On Thu, Oct 17, 2024 at 05:11:08PM +0300, Ilpo Järvinen wrote:
> The commit 2fe2abf896c1 ("PCI: augment bus resource table with a list")
> added PCI_SUBTRACTIVE_DECODE which is put into the struct
> pci_bus_resource flags field but is never read. There seems to never
> have been users for it. Remove both PCI_SUBTRACTIVE_DECODE and the
> flags field from the struct pci_bus_resource.
> 
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>

All three applied with Jonathan's reviewed-by to pci/enumeration for
v6.13, thanks, Ilpo!

> ---
>  arch/s390/pci/pci_bus.c |  2 +-
>  arch/x86/pci/fixup.c    |  2 +-
>  drivers/pci/bus.c       |  4 +---
>  drivers/pci/probe.c     |  5 ++---
>  include/linux/pci.h     | 12 +-----------
>  5 files changed, 6 insertions(+), 19 deletions(-)
> 
> diff --git a/arch/s390/pci/pci_bus.c b/arch/s390/pci/pci_bus.c
> index daa5d7450c7d..5630af5deb8b 100644
> --- a/arch/s390/pci/pci_bus.c
> +++ b/arch/s390/pci/pci_bus.c
> @@ -53,7 +53,7 @@ static int zpci_bus_prepare_device(struct zpci_dev *zdev)
>  		zpci_setup_bus_resources(zdev);
>  		for (i = 0; i < PCI_STD_NUM_BARS; i++) {
>  			if (zdev->bars[i].res)
> -				pci_bus_add_resource(zdev->zbus->bus, zdev->bars[i].res, 0);
> +				pci_bus_add_resource(zdev->zbus->bus, zdev->bars[i].res);
>  		}
>  	}
>  
> diff --git a/arch/x86/pci/fixup.c b/arch/x86/pci/fixup.c
> index 98a9bb92d75c..0681ecfe3430 100644
> --- a/arch/x86/pci/fixup.c
> +++ b/arch/x86/pci/fixup.c
> @@ -757,7 +757,7 @@ static void pci_amd_enable_64bit_bar(struct pci_dev *dev)
>  		dev_info(&dev->dev, "adding root bus resource %pR (tainting kernel)\n",
>  			 res);
>  		add_taint(TAINT_FIRMWARE_WORKAROUND, LOCKDEP_STILL_OK);
> -		pci_bus_add_resource(dev->bus, res, 0);
> +		pci_bus_add_resource(dev->bus, res);
>  	}
>  
>  	base = ((res->start >> 8) & AMD_141b_MMIO_BASE_MMIOBASE_MASK) |
> diff --git a/drivers/pci/bus.c b/drivers/pci/bus.c
> index 55c853686051..9cf6d0f3ab2b 100644
> --- a/drivers/pci/bus.c
> +++ b/drivers/pci/bus.c
> @@ -46,8 +46,7 @@ void pci_free_resource_list(struct list_head *resources)
>  }
>  EXPORT_SYMBOL(pci_free_resource_list);
>  
> -void pci_bus_add_resource(struct pci_bus *bus, struct resource *res,
> -			  unsigned int flags)
> +void pci_bus_add_resource(struct pci_bus *bus, struct resource *res)
>  {
>  	struct pci_bus_resource *bus_res;
>  
> @@ -58,7 +57,6 @@ void pci_bus_add_resource(struct pci_bus *bus, struct resource *res,
>  	}
>  
>  	bus_res->res = res;
> -	bus_res->flags = flags;
>  	list_add_tail(&bus_res->list, &bus->resources);
>  }
>  
> diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
> index 4f68414c3086..4243b1e6ece2 100644
> --- a/drivers/pci/probe.c
> +++ b/drivers/pci/probe.c
> @@ -546,8 +546,7 @@ void pci_read_bridge_bases(struct pci_bus *child)
>  	if (dev->transparent) {
>  		pci_bus_for_each_resource(child->parent, res) {
>  			if (res && res->flags) {
> -				pci_bus_add_resource(child, res,
> -						     PCI_SUBTRACTIVE_DECODE);
> +				pci_bus_add_resource(child, res);
>  				pci_info(dev, "  bridge window %pR (subtractive decode)\n",
>  					   res);
>  			}
> @@ -1032,7 +1031,7 @@ static int pci_register_host_bridge(struct pci_host_bridge *bridge)
>  		if (res->flags & IORESOURCE_BUS)
>  			pci_bus_insert_busn_res(bus, bus->number, res->end);
>  		else
> -			pci_bus_add_resource(bus, res, 0);
> +			pci_bus_add_resource(bus, res);
>  
>  		if (offset) {
>  			if (resource_type(res) == IORESOURCE_IO)
> diff --git a/include/linux/pci.h b/include/linux/pci.h
> index 573b4c4c2be6..6a9cf80d0d4b 100644
> --- a/include/linux/pci.h
> +++ b/include/linux/pci.h
> @@ -633,18 +633,9 @@ int pcibios_root_bridge_prepare(struct pci_host_bridge *bridge);
>   * Use pci_bus_for_each_resource() to iterate through all the resources.
>   */
>  
> -/*
> - * PCI_SUBTRACTIVE_DECODE means the bridge forwards the window implicitly
> - * and there's no way to program the bridge with the details of the window.
> - * This does not apply to ACPI _CRS windows, even with the _DEC subtractive-
> - * decode bit set, because they are explicit and can be programmed with _SRS.
> - */
> -#define PCI_SUBTRACTIVE_DECODE	0x1
> -
>  struct pci_bus_resource {
>  	struct list_head	list;
>  	struct resource		*res;
> -	unsigned int		flags;
>  };
>  
>  #define PCI_REGION_FLAG_MASK	0x0fU	/* These bits of resource flags tell us the PCI region flags */
> @@ -1498,8 +1489,7 @@ void pci_add_resource(struct list_head *resources, struct resource *res);
>  void pci_add_resource_offset(struct list_head *resources, struct resource *res,
>  			     resource_size_t offset);
>  void pci_free_resource_list(struct list_head *resources);
> -void pci_bus_add_resource(struct pci_bus *bus, struct resource *res,
> -			  unsigned int flags);
> +void pci_bus_add_resource(struct pci_bus *bus, struct resource *res);
>  struct resource *pci_bus_resource_n(const struct pci_bus *bus, int n);
>  void pci_bus_remove_resources(struct pci_bus *bus);
>  void pci_bus_remove_resource(struct pci_bus *bus, struct resource *res);
> -- 
> 2.39.5
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ