buffers: reinitialize metadata, add additional validation

- DPDK overwrites metadata as part of rte_pktmbuf_init(...) so we need
  reinitialize it

- additional checks added to ensure ref_count is never < 1

Change-Id: Ida336f81c4723e8f2e0ad4a70cb7b1ecfff978a0
Signed-off-by: Damjan Marion <damarion@cisco.com>
diff --git a/src/vlib/buffer.c b/src/vlib/buffer.c
index 3e19411..701ddde 100644
--- a/src/vlib/buffer.c
+++ b/src/vlib/buffer.c
@@ -569,6 +569,7 @@
       bi = vlib_get_buffer_index (vm, (vlib_buffer_t *) p);
 
       vec_add1_aligned (bp->buffers, bi, CLIB_CACHE_LINE_BYTES);
+      vlib_get_buffer (vm, bi);
 
       bp->n_buffers += 1;
     }