--- lib/netdev-odp.c | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-)
diff --git a/lib/netdev-odp.c b/lib/netdev-odp.c index 74fbac9..59de46d 100644 --- a/lib/netdev-odp.c +++ b/lib/netdev-odp.c @@ -102,7 +102,6 @@ int odp_init(int argc, char *argv[]) { int result; - int thr_id; if (strcmp(argv[1], "--odp")) return 0; @@ -110,14 +109,17 @@ odp_init(int argc, char *argv[]) argc--; argv++; - result = odp_init_global(); + result = odp_init_global(NULL, NULL); if (result) { ODP_ERR("Error: ODP global init failed\n"); return result; } - thr_id = odp_thread_create(0); - odp_init_local(thr_id); + /* Init this thread */ + if (odp_init_local()) { + ODP_ERR("Error: ODP local init failed.\n"); + exit(EXIT_FAILURE); + } odp_initialized = 1; @@ -128,11 +130,13 @@ static int odp_class_init(void) { void *pool_base; + odp_shm_t shm; int result = 0; /* create packet pool */ - pool_base = odp_shm_reserve("shm_packet_pool", SHM_PKT_POOL_SIZE, - ODP_CACHE_LINE_SIZE); + shm = odp_shm_reserve("shm_packet_pool", SHM_PKT_POOL_SIZE, + ODP_CACHE_LINE_SIZE, 0); + pool_base = odp_shm_addr(shm); if (odp_unlikely(pool_base == NULL)) { ODP_ERR("Error: ODP packet pool mem alloc failed\n"); @@ -153,8 +157,9 @@ odp_class_init(void) odp_buffer_pool_print(pool); /* create ofpbuf pool */ - pool_base = odp_shm_reserve("shm_ofpbuf_pool", SHM_OFPBUF_POOL_SIZE, - ODP_CACHE_LINE_SIZE); + shm = odp_shm_reserve("shm_ofpbuf_pool", SHM_OFPBUF_POOL_SIZE, + ODP_CACHE_LINE_SIZE, 0); + pool_base = odp_shm_addr(shm); if (odp_unlikely(pool_base == NULL)) { ODP_ERR("Error: ODP packet pool mem alloc failed\n"); @@ -175,8 +180,9 @@ odp_class_init(void) odp_buffer_pool_print(ofpbuf_pool); /* create pool for structures */ - pool_base = odp_shm_reserve("shm_struct_pool", SHM_STRUCT_POOL_SIZE, - ODP_CACHE_LINE_SIZE); + shm = odp_shm_reserve("shm_struct_pool", SHM_STRUCT_POOL_SIZE, + ODP_CACHE_LINE_SIZE, 0); + pool_base = odp_shm_addr(shm); if (odp_unlikely(pool_base == NULL)) { ODP_ERR("Error: ODP packet pool mem alloc failed\n"); @@ -222,8 +228,6 @@ netdev_odp_construct(struct netdev *netdev_) { int err = 0; char *odp_if; - odp_pktio_params_t params; - socket_params_t *sock_params = ¶ms.sock_params; struct netdev_odp *netdev = netdev_odp_cast(netdev_); odp_packet_t pkt; @@ -234,9 +238,7 @@ netdev_odp_construct(struct netdev *netdev_) goto out_err; } - sock_params->type = ODP_PKTIO_TYPE_SOCKET_BASIC; - - netdev->pktio = odp_pktio_open(odp_if, pool, ¶ms); + netdev->pktio = odp_pktio_open(odp_if, pool); if (netdev->pktio == ODP_PKTIO_INVALID) { ODP_ERR("Error: odp pktio failed\n"); -- 1.9.1 _______________________________________________ lng-odp mailing list lng-odp@lists.linaro.org http://lists.linaro.org/mailman/listinfo/lng-odp