[dpdk-dev] [PATCH 3/4] pci: align ioport special case for x86 in read/write/unmap

David Marchand david.marchand at 6wind.com
Tue Mar 15 07:29:12 CET 2016


Commit b8eb345378bd ("pci: ignore devices already managed in Linux when
mapping x86 ioport") did not update other parts of the ioport api.

The application is not supposed to call these read/write/unmap ioport
functions if map call failed but I prefer aligning the code for the sake
of consistency.

Signed-off-by: David Marchand <david.marchand at 6wind.com>
---
 lib/librte_eal/linuxapp/eal/eal_pci.c | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/lib/librte_eal/linuxapp/eal/eal_pci.c b/lib/librte_eal/linuxapp/eal/eal_pci.c
index 7707292..74c6919 100644
--- a/lib/librte_eal/linuxapp/eal/eal_pci.c
+++ b/lib/librte_eal/linuxapp/eal/eal_pci.c
@@ -653,12 +653,13 @@ rte_eal_pci_ioport_read(struct rte_pci_ioport *p,
 	case RTE_KDRV_UIO_GENERIC:
 		pci_uio_ioport_read(p, data, len, offset);
 		break;
-	default:
+	case RTE_KDRV_NONE:
 #if defined(RTE_ARCH_X86)
-		/* special case for x86 ... */
 		pci_uio_ioport_read(p, data, len, offset);
 #endif
 		break;
+	default:
+		break;
 	}
 }
 
@@ -678,12 +679,13 @@ rte_eal_pci_ioport_write(struct rte_pci_ioport *p,
 	case RTE_KDRV_UIO_GENERIC:
 		pci_uio_ioport_write(p, data, len, offset);
 		break;
-	default:
+	case RTE_KDRV_NONE:
 #if defined(RTE_ARCH_X86)
-		/* special case for x86 ... */
 		pci_uio_ioport_write(p, data, len, offset);
 #endif
 		break;
+	default:
+		break;
 	}
 }
 
@@ -705,12 +707,13 @@ rte_eal_pci_ioport_unmap(struct rte_pci_ioport *p)
 	case RTE_KDRV_UIO_GENERIC:
 		ret = pci_uio_ioport_unmap(p);
 		break;
-	default:
+	case RTE_KDRV_NONE:
 #if defined(RTE_ARCH_X86)
-		/* special case for x86 ... nothing to do */
 		ret = 0;
 #endif
 		break;
+	default:
+		break;
 	}
 
 	return ret;
-- 
1.9.1



More information about the dev mailing list