test: Fix test-dpif-dpdk unit tests

- Add alloc/free queues to dpdk-ring-stub.c
- Make test-dpdk-link.c use dpdk-ring-stub.c removing a duplicated
  function.

Change-Id: I22cab8c2eba8a6f3e1cf33e78075864c9875b9a3
Reviewed-by: Mark D. Gray <mark.d.gray@intel.com>
Reviewed-by: Eimear Morrissey <eimear.morrissey@intel.com>
Reviewed-by: Stephen Finucane <stephen.finucane@intel.com>
Signed-off-by: Nicolas Pernas Maradei <nicolasx.pernas.maradei@intel.com>
datapath/Makefile: add dependencies between targets

Add missing dependencies between vport and vport_ut targets preventing
building issues due to tasks executed out of sync.

Change-Id: I0f47972f8363e5f02f1122a702f5c0591150bb80
Reviewd-by: Mark D. Gray <mark.d.gray@intel.com>
Signed-off-by: Nicolas Pernas Maradei <nicolasx.pernas.maradei@intel.com>
NEWS.md: update

Added userspace vhost device type to NEWS.md

Change-Id: Id7e3a0a5dcfe011a5a8844cc1738664ad7c7e384
Reviewed-by: Mark D. Gray <mark.d.gray@intel.com>
Signed-off-by: Anthony Fee <anthonyx.fee@intel.com>
Userspace vhost: memory file mapping

This patch fixes an issue seen in Ubuntu where the return value of the
function realpath() is not dealt with. This return value along with the
resolved path are now checked. Previously if no path was found it would
result in an error. Now it continues to the next path which is the
desired behaviour. If, after this, all paths are checked and the memory file
isn't found then an error is the result.

Change-Id: I17c0e7af4051174eac35b50c1f5624af76b28987
Reviewed-by: Mark D. Gray <mark.d.gray@intel.com>
Signed-off-by: Anthony Fee <anthonyx.fee@intel.com>
vport: make client free queue accessed as multiple consumer ring

Fix concurrency issue on client free queue being accessed by
multiple threads in a single-consumer way. Changed access to
multiple-consumer. The concurrency issue may lead to possible memory
corruption.

Change-Id: I44c0f8f43c5d93feef45dcd45bd59c91b6a43dbd
Reviewed-by: Mark D. Gray <mark.d.gray@intel.com>
Signed-off-by: Nicolas Pernas Maradei <nicolasx.pernas.maradei@intel.com>
dpif-dpdk: Add thread id to vport messages

In order to ensure that the reply of each vport message
is received by the same thread that sent it, a thread id field
is required in the vport message.

Change-Id: Ia8b7c8cb03cc1c96737d68b154131e301b571c01
Reviewed-by: Mark B. Kavanagh <mark.b.kavanagh@intel.com>
Signed-off-by: Mark D. Gray <mark.d.gray@intel.com>
Makefile: Add kni patch as dependency

Change-Id: I5de6a11817eef8fc2a542094b691b0f6fdc8cf75
Reviewed-by: Meghan Halton <meghan.halton@intel.com>
Signed-off-by: Mark D. Gray <mark.d.gray@intel.com>
dpif-dpdk: set op->error properly

The ops aren't set error code properly in multiple operations.
Set op->error in each operation in dpif_dpdk_operate() to prevent
unexpected error.

Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Reviewed-by: Hayato Momma <h-momma@ce.jp.nec.com>