Re: [PATCH 03/11] pci: reject mmio range start from 0 onpci_bridge read

From: Alex Chiang
Date: Fri Jan 15 2010 - 23:20:26 EST


Please change title of patch to:

pci: pci_read_bridge_bases rejects MMIO ranges starting at 0

* Yinghai Lu <yinghai@xxxxxxxxxx>:
> that is wrong.
>
> exposed by that patch that doesn's shrink pci bridge res.

Ok, I don't understand how this patch interacts with patch 4/11.
Am I correct in understanding that something in 4/11 exposes a
problem that 3/11 fixes?

I'm just looking for a better explanation of *why* we need this
patch here.

> -v2: change to "bar reading" to "reg reading"
>
> Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx>
> ---
> drivers/pci/probe.c | 18 +++++++++++++++---
> 1 files changed, 15 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
> index 11824d7..70b1f74 100644
> --- a/drivers/pci/probe.c
> +++ b/drivers/pci/probe.c
> @@ -316,13 +316,17 @@ void __devinit pci_read_bridge_bases(struct pci_bus *child)
> limit |= (io_limit_hi << 16);
> }
>
> - if (base <= limit) {
> + if (base <= limit && base) {

This construct (and the similar one below) is a little
non-idiomatic.

if (base && base <= limit)

reads a lot more naturally to me.

thanks,
/ac
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/