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: <20240429154901.GA682729@bhelgaas>
Date: Mon, 29 Apr 2024 10:49:01 -0500
From: Bjorn Helgaas <helgaas@...nel.org>
To: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
Cc: Bjorn Helgaas <bhelgaas@...gle.com>, linux-pci@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] PCI: Cleanup accessor macros formatting

On Mon, Apr 29, 2024 at 12:47:07PM +0300, Ilpo Järvinen wrote:
> Cleanup formatting of PCI accessor macros:
> 
> - Put return statements on own line
> - Add a few empty lines for better readability
> - Align macro continuation backslashes
> - Correct function call argument indentation level
> - Reorder variable declarations to reverse xmas tree
> 
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>

Both applied to pci/misc for v6.10, thanks!

I tweaked the PCI_USER_READ_CONFIG variable declaration from the
existing reverse xmas tree to order of use because xmas tree orders
look nice but carry no useful information.  In the cases you updated,
reverse xmas tree and order of use happen to be the same.

Also dropped "ret" initialization in PCI_USER_READ_CONFIG and
PCI_USER_WRITE_CONFIG since it's always set before being used anyway.

> ---
>  drivers/pci/access.c | 36 +++++++++++++++++++++++++-----------
>  1 file changed, 25 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/pci/access.c b/drivers/pci/access.c
> index 6449056b57dd..4962a841fa35 100644
> --- a/drivers/pci/access.c
> +++ b/drivers/pci/access.c
> @@ -36,10 +36,13 @@ DEFINE_RAW_SPINLOCK(pci_lock);
>  int noinline pci_bus_read_config_##size \
>  	(struct pci_bus *bus, unsigned int devfn, int pos, type *value)	\
>  {									\
> -	int res;							\
>  	unsigned long flags;						\
>  	u32 data = 0;							\
> -	if (PCI_##size##_BAD) return PCIBIOS_BAD_REGISTER_NUMBER;	\
> +	int res;							\
> +									\
> +	if (PCI_##size##_BAD)						\
> +		return PCIBIOS_BAD_REGISTER_NUMBER;			\
> +									\
>  	pci_lock_config(flags);						\
>  	res = bus->ops->read(bus, devfn, pos, len, &data);		\
>  	if (res)							\
> @@ -47,6 +50,7 @@ int noinline pci_bus_read_config_##size \
>  	else								\
>  		*value = (type)data;					\
>  	pci_unlock_config(flags);					\
> +									\
>  	return res;							\
>  }
>  
> @@ -54,12 +58,16 @@ int noinline pci_bus_read_config_##size \
>  int noinline pci_bus_write_config_##size \
>  	(struct pci_bus *bus, unsigned int devfn, int pos, type value)	\
>  {									\
> -	int res;							\
>  	unsigned long flags;						\
> -	if (PCI_##size##_BAD) return PCIBIOS_BAD_REGISTER_NUMBER;	\
> +	int res;							\
> +									\
> +	if (PCI_##size##_BAD)						\
> +		return PCIBIOS_BAD_REGISTER_NUMBER;			\
> +									\
>  	pci_lock_config(flags);						\
>  	res = bus->ops->write(bus, devfn, pos, len, value);		\
>  	pci_unlock_config(flags);					\
> +									\
>  	return res;							\
>  }
>  
> @@ -216,24 +224,27 @@ static noinline void pci_wait_cfg(struct pci_dev *dev)
>  }
>  
>  /* Returns 0 on success, negative values indicate error. */
> -#define PCI_USER_READ_CONFIG(size, type)					\
> +#define PCI_USER_READ_CONFIG(size, type)				\
>  int pci_user_read_config_##size						\
>  	(struct pci_dev *dev, int pos, type *val)			\
>  {									\
>  	int ret = PCIBIOS_SUCCESSFUL;					\
>  	u32 data = -1;							\
> +									\
>  	if (PCI_##size##_BAD)						\
>  		return -EINVAL;						\
> -	raw_spin_lock_irq(&pci_lock);				\
> +									\
> +	raw_spin_lock_irq(&pci_lock);					\
>  	if (unlikely(dev->block_cfg_access))				\
>  		pci_wait_cfg(dev);					\
>  	ret = dev->bus->ops->read(dev->bus, dev->devfn,			\
> -					pos, sizeof(type), &data);	\
> -	raw_spin_unlock_irq(&pci_lock);				\
> +				  pos, sizeof(type), &data);		\
> +	raw_spin_unlock_irq(&pci_lock);					\
>  	if (ret)							\
>  		PCI_SET_ERROR_RESPONSE(val);				\
>  	else								\
>  		*val = (type)data;					\
> +									\
>  	return pcibios_err_to_errno(ret);				\
>  }									\
>  EXPORT_SYMBOL_GPL(pci_user_read_config_##size);
> @@ -244,14 +255,17 @@ int pci_user_write_config_##size					\
>  	(struct pci_dev *dev, int pos, type val)			\
>  {									\
>  	int ret = PCIBIOS_SUCCESSFUL;					\
> +									\
>  	if (PCI_##size##_BAD)						\
>  		return -EINVAL;						\
> -	raw_spin_lock_irq(&pci_lock);				\
> +									\
> +	raw_spin_lock_irq(&pci_lock);					\
>  	if (unlikely(dev->block_cfg_access))				\
>  		pci_wait_cfg(dev);					\
>  	ret = dev->bus->ops->write(dev->bus, dev->devfn,		\
> -					pos, sizeof(type), val);	\
> -	raw_spin_unlock_irq(&pci_lock);				\
> +				   pos, sizeof(type), val);		\
> +	raw_spin_unlock_irq(&pci_lock);					\
> +									\
>  	return pcibios_err_to_errno(ret);				\
>  }									\
>  EXPORT_SYMBOL_GPL(pci_user_write_config_##size);
> -- 
> 2.39.2
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ