dpdk/pci: support DPDK 18.08 write combined PCI resources
We used to support it by default in our DPDK forks, but starting with DPDK 18.08, a new PCI driver flag RTE_PCI_DRV_WC_ACTIVATE is required. We enable now it for NVMe and Virtio, but not for I/OAT, as our I/OAT driver currently assumes strong memory ordering, which prefetchable resources do not provide. Change-Id: I1a13356e28535981153b3d3e52bfe9d66b6172ae Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com> Reviewed-on: https://review.gerrithub.io/422588 Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: <wenqianx.zong@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Tested-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
parent
ec611eb485
commit
4baae265ca
@ -52,7 +52,11 @@ static struct rte_pci_id nvme_pci_driver_id[] = {
|
||||
|
||||
static struct spdk_pci_enum_ctx g_nvme_pci_drv = {
|
||||
.driver = {
|
||||
.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
|
||||
.drv_flags = RTE_PCI_DRV_NEED_MAPPING
|
||||
#if RTE_VERSION >= RTE_VERSION_NUM(18, 8, 0, 0)
|
||||
| RTE_PCI_DRV_WC_ACTIVATE
|
||||
#endif
|
||||
,
|
||||
.id_table = nvme_pci_driver_id,
|
||||
#if RTE_VERSION >= RTE_VERSION_NUM(16, 11, 0, 0)
|
||||
.probe = spdk_pci_device_init,
|
||||
|
@ -43,7 +43,11 @@ static struct rte_pci_id virtio_pci_driver_id[] = {
|
||||
|
||||
static struct spdk_pci_enum_ctx g_virtio_pci_drv = {
|
||||
.driver = {
|
||||
.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
|
||||
.drv_flags = RTE_PCI_DRV_NEED_MAPPING
|
||||
#if RTE_VERSION >= RTE_VERSION_NUM(18, 8, 0, 0)
|
||||
| RTE_PCI_DRV_WC_ACTIVATE
|
||||
#endif
|
||||
,
|
||||
.id_table = virtio_pci_driver_id,
|
||||
#if RTE_VERSION >= RTE_VERSION_NUM(16, 11, 0, 0)
|
||||
.probe = spdk_pci_device_init,
|
||||
|
Loading…
Reference in New Issue
Block a user