diff mbox

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

Message ID 1374957581-5542-1-git-send-email-ethan.kernel@gmail.com (mailing list archive)
State New, archived
Delegated to: Bjorn Helgaas
Headers show

Commit Message

Ethan Zhao July 27, 2013, 8:39 p.m. UTC
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.kernel@gmail.com>
---
 arch/x86/pci/mmconfig-shared.c |   11 +++++------
 1 files changed, 5 insertions(+), 6 deletions(-)
diff mbox

Patch

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) {