numam-dpdk/lib
Maxime Coquelin eefac9536a vhost: postpone device creation until rings are mapped
Translating the start addresses of the rings is not enough, we need to
be sure all the ring is made available by the guest.

It depends on the size of the rings, which is not known on SET_VRING_ADDR
reception. Furthermore, we need to be be safe against vring pages
invalidates.

This patch introduces a new access_ok flag per virtqueue, which is set
when all the rings are mapped, and cleared as soon as a page used by a
ring is invalidated. The invalidation part is implemented in a following
patch.

Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Yuanhan Liu <yliu@fridaylinux.org>
2017-10-10 15:52:27 +02:00
..
librte_acl lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_bitratestats ethdev: increase port id range 2017-10-06 18:23:25 +02:00
librte_cfgfile cfgfile: rework load function 2017-10-09 00:50:48 +02:00
librte_cmdline cmdline: fix compilation with -Og 2017-10-06 02:49:50 +02:00
librte_compat fix typos using codespell utility 2017-06-14 23:54:13 +02:00
librte_cryptodev cryptodev: fix C11 extensions in exported header 2017-08-05 01:18:21 +02:00
librte_distributor lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_eal vfio: refactor PCI BAR mapping 2017-10-10 15:37:58 +02:00
librte_efd update Cavium Inc copyright headers 2017-07-08 17:43:49 +02:00
librte_ether xen: remove dependency in libraries 2017-10-09 01:52:08 +02:00
librte_eventdev eventdev: bump library version 2017-08-08 20:01:39 +02:00
librte_gro gro: fix typo in map file 2017-08-31 23:02:54 +02:00
librte_hash hash: optimize Toeplitz RSS computation 2017-10-07 13:50:43 +02:00
librte_ip_frag ip_frag: rename map file to standardized name 2017-08-31 23:02:57 +02:00
librte_jobstats jobstats: fix a doxygen comment 2017-10-08 22:22:08 +02:00
librte_kni ethdev: increase port id range 2017-10-06 18:23:25 +02:00
librte_kvargs mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
librte_latencystats ethdev: increase port id range 2017-10-06 18:23:25 +02:00
librte_lpm lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_mbuf eal: allow user to override default mempool driver 2017-10-06 20:48:22 +02:00
librte_member member: add AVX for HT mode 2017-10-09 00:02:45 +02:00
librte_mempool mem: remove API to get physical address in dom0 2017-10-09 01:52:37 +02:00
librte_meter mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
librte_metrics metrics: fix compilation with -Og 2017-10-06 02:49:50 +02:00
librte_net net: fix inner L2 length in packet type parser 2017-10-05 23:34:45 +02:00
librte_pdump ethdev: increase port id range 2017-10-06 18:23:25 +02:00
librte_pipeline mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
librte_port ethdev: increase port id range 2017-10-06 18:23:25 +02:00
librte_power power: add turbo functions to map file 2017-10-03 10:46:12 +02:00
librte_reorder fix typos using codespell utility 2017-06-14 23:54:13 +02:00
librte_ring ring: increase maximum ring size 2017-10-05 23:23:12 +02:00
librte_sched sched: remove check for SSE4 2017-07-04 14:39:18 +02:00
librte_table update Cavium Inc copyright headers 2017-07-08 17:43:49 +02:00
librte_timer lib: remove duplicate includes 2017-07-16 17:30:06 +02:00
librte_vhost vhost: postpone device creation until rings are mapped 2017-10-10 15:52:27 +02:00
Makefile cfgfile: remove EAL dependency 2017-10-09 00:44:59 +02:00