[PATCH v3] x86/PCI: MMCONFIG: cleanup and add address warning to pci_mmconfig_insert

2013-07-27 Thread ethan.zhao
V2: Corrected code style and tested for Linux v 3.11-rc2
V3: Fix the no space betwween words typo and keep the string in one line.

Signed-off-by: ethan.zhao 
---
 arch/x86/pci/mmconfig-shared.c |   11 +--
 1 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/arch/x86/pci/mmconfig-shared.c b/arch/x86/pci/mmconfig-shared.c
index 082e881..619b74b 100644
--- a/arch/x86/pci/mmconfig-shared.c
+++ b/arch/x86/pci/mmconfig-shared.c
@@ -700,8 +700,12 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 
start, u8 end,
if (!(pci_probe & PCI_PROBE_MMCONF) || pci_mmcfg_arch_init_failed)
return -ENODEV;
 
-   if (start > end)
+if (start > end || !addr) {
+dev_warn(dev, FW_INFO
+   "Invalid address to add MMCONFIG start %02x end %02x 
addr %pR\n",
+   start, end, addr);
return -EINVAL;
+   }
 
mutex_lock(_mmcfg_lock);
cfg = pci_mmconfig_lookup(seg, start);
@@ -716,11 +720,6 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 
start, u8 end,
return -EEXIST;
}
 
-   if (!addr) {
-   mutex_unlock(_mmcfg_lock);
-   return -EINVAL;
-   }
-
rc = -EBUSY;
cfg = pci_mmconfig_alloc(seg, start, end, addr);
if (cfg == NULL) {
-- 
1.7.1

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


[PATCH v3] x86/PCI: MMCONFIG: cleanup and add address warning to pci_mmconfig_insert

2013-07-27 Thread ethan.zhao
V2: Corrected code style and tested for Linux v 3.11-rc2
V3: Fix the no space betwween words typo and keep the string in one line.

Signed-off-by: ethan.zhao ethan.ker...@gmail.com
---
 arch/x86/pci/mmconfig-shared.c |   11 +--
 1 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/arch/x86/pci/mmconfig-shared.c b/arch/x86/pci/mmconfig-shared.c
index 082e881..619b74b 100644
--- a/arch/x86/pci/mmconfig-shared.c
+++ b/arch/x86/pci/mmconfig-shared.c
@@ -700,8 +700,12 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 
start, u8 end,
if (!(pci_probe  PCI_PROBE_MMCONF) || pci_mmcfg_arch_init_failed)
return -ENODEV;
 
-   if (start  end)
+if (start  end || !addr) {
+dev_warn(dev, FW_INFO
+   Invalid address to add MMCONFIG start %02x end %02x 
addr %pR\n,
+   start, end, addr);
return -EINVAL;
+   }
 
mutex_lock(pci_mmcfg_lock);
cfg = pci_mmconfig_lookup(seg, start);
@@ -716,11 +720,6 @@ int pci_mmconfig_insert(struct device *dev, u16 seg, u8 
start, u8 end,
return -EEXIST;
}
 
-   if (!addr) {
-   mutex_unlock(pci_mmcfg_lock);
-   return -EINVAL;
-   }
-
rc = -EBUSY;
cfg = pci_mmconfig_alloc(seg, start, end, addr);
if (cfg == NULL) {
-- 
1.7.1

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