This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The tag, v1.22.0.0 has been created
at c8d22107bd8b64efc91bc064fe20e7aeeac7efff (commit)
- Log -----------------------------------------------------------------
commit c8d22107bd8b64efc91bc064fe20e7aeeac7efff
Author: Matias Elo <matias.elo(a)nokia.com>
Date: Thu Aug 22 14:01:06 2019 +0300
configure.ac: update version to v1.22.0.0
Signed-off-by: Matias Elo <matias.elo(a)nokia.com>
Reviewed-by: Petri Savolainen <petri.savolainen(a)nokia.com>
-----------------------------------------------------------------------
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, master has been updated
via 7fd565206ddfe4acb5c8c44d7aa2f6a6e4218148 (commit)
from 807a49cbdebcff68b5aec305513587c3827e77c5 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 7fd565206ddfe4acb5c8c44d7aa2f6a6e4218148
Author: Petri Savolainen <petri.savolainen(a)nokia.com>
Date: Tue Aug 20 15:49:32 2019 +0300
test: correct getopt short option usage
Remove extra plus characters from short option string.
Only the first char needs to be '+' char: "If the first character
of option string is '+' then option processing stops as soon as
a nonoption argument is encountered."
Signed-off-by: Petri Savolainen <petri.savolainen(a)nokia.com>
Reviewed-by: Matias Elo <matias.elo(a)nokia.com>
diff --git a/example/packet/odp_pktio.c b/example/packet/odp_pktio.c
index 40038d57c..55e217e54 100644
--- a/example/packet/odp_pktio.c
+++ b/example/packet/odp_pktio.c
@@ -600,7 +600,7 @@ static void parse_args(int argc, char *argv[], appl_args_t *appl_args)
{NULL, 0, NULL, 0}
};
- static const char *shortopts = "+c:i:+m:t:h";
+ static const char *shortopts = "+c:i:m:t:h";
appl_args->cpu_count = 1; /* use one worker by default */
appl_args->mode = APPL_MODE_PKT_SCHED;
diff --git a/example/switch/odp_switch.c b/example/switch/odp_switch.c
index c922f7ef4..026af6ec8 100644
--- a/example/switch/odp_switch.c
+++ b/example/switch/odp_switch.c
@@ -756,7 +756,7 @@ static void parse_args(int argc, char *argv[], appl_args_t *appl_args)
{NULL, 0, NULL, 0}
};
- static const char *shortopts = "+c:+t:+a:i:h";
+ static const char *shortopts = "+c:t:a:i:h";
appl_args->cpu_count = 1; /* use one worker by default */
appl_args->time = 0; /* loop forever if time to run is 0 */
diff --git a/test/performance/odp_cpu_bench.c b/test/performance/odp_cpu_bench.c
index 00efb7a86..8ea064535 100644
--- a/test/performance/odp_cpu_bench.c
+++ b/test/performance/odp_cpu_bench.c
@@ -382,7 +382,7 @@ static void parse_args(int argc, char *argv[], appl_args_t *appl_args)
{NULL, 0, NULL, 0}
};
- static const char *shortopts = "+a:+c:+l:+t:h";
+ static const char *shortopts = "+a:c:l:t:h";
appl_args->accuracy = 1; /* Get and print pps stats second */
appl_args->cpu_count = 1;
diff --git a/test/performance/odp_pktio_ordered.c b/test/performance/odp_pktio_ordered.c
index 51ec03ce9..e7383d873 100644
--- a/test/performance/odp_pktio_ordered.c
+++ b/test/performance/odp_pktio_ordered.c
@@ -864,7 +864,7 @@ static void parse_args(int argc, char *argv[], appl_args_t *appl_args)
{NULL, 0, NULL, 0}
};
- static const char *shortopts = "+c:+t:+a:i:m:d:r:f:e:h";
+ static const char *shortopts = "+c:t:a:i:m:d:r:f:e:h";
appl_args->time = 0; /* loop forever if time to run is 0 */
appl_args->accuracy = DEF_STATS_INT;
-----------------------------------------------------------------------
Summary of changes:
example/packet/odp_pktio.c | 2 +-
example/switch/odp_switch.c | 2 +-
test/performance/odp_cpu_bench.c | 2 +-
test/performance/odp_pktio_ordered.c | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, master has been updated
via eec882c78e9ce4aefe1209cfc4da2130aea4cc83 (commit)
from 1d26a1ea71eab90d4a761246b7d76f7ffebdbfad (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit eec882c78e9ce4aefe1209cfc4da2130aea4cc83
Author: Matias Elo <matias.elo(a)nokia.com>
Date: Thu Jun 20 14:01:42 2019 +0300
linux-gen: timer: don't reserve any resources when timers are disabled
Don't reserve any memory or perform initialization if timer feature
(odp_feature_t.feat.timer) is marked as not used.
Signed-off-by: Matias Elo <matias.elo(a)nokia.com>
Reviewed-by: Bill Fischofer <billf(a)me.com>
diff --git a/platform/linux-generic/odp_timer.c b/platform/linux-generic/odp_timer.c
index 8e98d51ac..e55c68873 100644
--- a/platform/linux-generic/odp_timer.c
+++ b/platform/linux-generic/odp_timer.c
@@ -1413,6 +1413,12 @@ int odp_timer_init_global(const odp_init_t *params)
const char *conf_str;
int val = 0;
+ if (params && params->not_used.feat.timer) {
+ ODP_DBG("Timers disabled\n");
+ timer_global = NULL;
+ return 0;
+ }
+
shm = odp_shm_reserve("_odp_timer", sizeof(timer_global_t),
ODP_CACHE_LINE_SIZE, 0);
@@ -1452,9 +1458,6 @@ int odp_timer_init_global(const odp_init_t *params)
}
timer_global->inline_poll_interval = val;
- if (params && params->not_used.feat.timer)
- timer_global->use_inline_timers = false;
-
timer_global->time_per_ratelimit_period =
odp_time_global_from_ns(timer_global->min_res_ns / 2);
@@ -1468,7 +1471,7 @@ int odp_timer_init_global(const odp_init_t *params)
int odp_timer_term_global(void)
{
- if (odp_shm_free(timer_global->shm)) {
+ if (timer_global && odp_shm_free(timer_global->shm)) {
ODP_ERR("Shm free failed for odp_timer\n");
return -1;
}
-----------------------------------------------------------------------
Summary of changes:
platform/linux-generic/odp_timer.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, master has been updated
via 1d26a1ea71eab90d4a761246b7d76f7ffebdbfad (commit)
from fbc5f7d1433bd3a9fea7c55fed6ec3336a4fef02 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 1d26a1ea71eab90d4a761246b7d76f7ffebdbfad
Author: Matias Elo <matias.elo(a)nokia.com>
Date: Tue Jul 16 12:17:39 2019 +0300
linux-gen: dpdk: rename mempool handler ops to avoid naming conflict
DPDK registers mempool ops named 'ops_stack' internally causing multiple
definition failure when linking DPDK with '--whole-archive' flag.
Signed-off-by: Matias Elo <matias.elo(a)nokia.com>
Reviewed-by: Bill Fischofer <billf(a)me.com>
diff --git a/platform/linux-generic/pktio/dpdk.c b/platform/linux-generic/pktio/dpdk.c
index deef0b31c..3d15c6495 100644
--- a/platform/linux-generic/pktio/dpdk.c
+++ b/platform/linux-generic/pktio/dpdk.c
@@ -537,7 +537,7 @@ uint32_t _odp_dpdk_pool_obj_size(pool_t *pool, uint32_t block_size)
return total_size;
}
-static struct rte_mempool_ops ops_stack = {
+static struct rte_mempool_ops odp_pool_ops = {
.name = "odp_pool",
.alloc = pool_alloc,
.free = pool_free,
@@ -546,7 +546,7 @@ static struct rte_mempool_ops ops_stack = {
.get_count = pool_get_count
};
-MEMPOOL_REGISTER_OPS(ops_stack);
+MEMPOOL_REGISTER_OPS(odp_pool_ops);
static inline int mbuf_to_pkt(pktio_entry_t *pktio_entry,
odp_packet_t pkt_table[],
-----------------------------------------------------------------------
Summary of changes:
platform/linux-generic/pktio/dpdk.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
hooks/post-receive
--
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "".
The branch, master has been updated
via fbc5f7d1433bd3a9fea7c55fed6ec3336a4fef02 (commit)
via d232f60bca28a01f19e7de993d356cab645f62b4 (commit)
from 70a21e1b3c797f96ed0768f045be7f1f624a415b (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit fbc5f7d1433bd3a9fea7c55fed6ec3336a4fef02
Author: Stanislaw Kardach <skardach(a)marvell.com>
Date: Thu Jul 11 13:05:34 2019 +0200
test: performance: guard against double exit
Some applications use SHM to store global state, including a flag used
by signal handlers to indicate application termination request (through
SIGINT). If that signal is delivered a second time after the SHM segment
was freed, it will result in a segmentation fault as the memory is
released.
Signed-off-by: Stanislaw Kardach <skardach(a)marvell.com>
Reviewed-by: Matias Elo <matias.elo(a)nokia.com>
diff --git a/test/performance/odp_bench_packet.c b/test/performance/odp_bench_packet.c
index c89e86d8d..387bd9f25 100644
--- a/test/performance/odp_bench_packet.c
+++ b/test/performance/odp_bench_packet.c
@@ -171,6 +171,8 @@ static args_t *gbl_args;
static void sig_handler(int signo ODP_UNUSED)
{
+ if (gbl_args == NULL)
+ return;
gbl_args->exit_thread = 1;
}
@@ -1661,6 +1663,8 @@ int main(int argc, char *argv[])
LOG_ERR("Error: pool destroy\n");
exit(EXIT_FAILURE);
}
+ gbl_args = NULL;
+ odp_mb_full();
if (odp_shm_free(shm)) {
LOG_ERR("Error: shm free\n");
diff --git a/test/performance/odp_cpu_bench.c b/test/performance/odp_cpu_bench.c
index 4c36aca1e..00efb7a86 100644
--- a/test/performance/odp_cpu_bench.c
+++ b/test/performance/odp_cpu_bench.c
@@ -177,6 +177,8 @@ static const uint8_t test_udp_packet[] = {
static void sig_handler(int signo ODP_UNUSED)
{
+ if (gbl_args == NULL)
+ return;
gbl_args->exit_threads = 1;
}
@@ -799,6 +801,9 @@ int main(int argc, char *argv[])
}
}
}
+ gbl_args = NULL;
+ odp_mb_full();
+
if (odp_pool_destroy(pool)) {
LOG_ERR("Error: pool destroy\n");
exit(EXIT_FAILURE);
diff --git a/test/performance/odp_l2fwd.c b/test/performance/odp_l2fwd.c
index 89c979324..2cec9c90c 100644
--- a/test/performance/odp_l2fwd.c
+++ b/test/performance/odp_l2fwd.c
@@ -178,6 +178,8 @@ static args_t *gbl_args;
static void sig_handler(int signo ODP_UNUSED)
{
+ if (gbl_args == NULL)
+ return;
gbl_args->exit_threads = 1;
}
@@ -1724,6 +1726,8 @@ int main(int argc, char *argv[])
free(gbl_args->appl.if_names);
free(gbl_args->appl.if_str);
+ gbl_args = NULL;
+ odp_mb_full();
if (odp_pool_destroy(pool)) {
LOG_ERR("Error: pool destroy\n");
diff --git a/test/performance/odp_sched_pktio.c b/test/performance/odp_sched_pktio.c
index 393ea3521..bc5da01f3 100644
--- a/test/performance/odp_sched_pktio.c
+++ b/test/performance/odp_sched_pktio.c
@@ -1544,6 +1544,8 @@ quit:
if (test_global->tx_pkt_sum > TEST_PASSED_LIMIT)
ret += 2;
}
+ test_global = NULL;
+ odp_mb_full();
if (odp_shm_free(shm)) {
printf("Error: shm free failed.\n");
commit d232f60bca28a01f19e7de993d356cab645f62b4
Author: Stanislaw Kardach <skardach(a)marvell.com>
Date: Thu Jul 11 13:04:55 2019 +0200
example: guard against double exit
Some applications use SHM to store global state, including a flag used
by signal handlers to indicate application termination request (through
SIGINT). If that signal is delivered a second time after the SHM segment
was freed, it will result in a segmentation fault as the memory is
released.
Signed-off-by: Stanislaw Kardach <skardach(a)marvell.com>
Reviewed-by: Matias Elo <matias.elo(a)nokia.com>
diff --git a/example/generator/odp_generator.c b/example/generator/odp_generator.c
index 313305f01..976dd722a 100644
--- a/example/generator/odp_generator.c
+++ b/example/generator/odp_generator.c
@@ -172,7 +172,8 @@ static void print_global_stats(int num_workers);
static void sig_handler(int signo ODP_UNUSED)
{
int i;
-
+ if (args == NULL)
+ return;
for (i = 0; i < args->thread_cnt; i++)
args->thread[i].stop = 1;
}
@@ -1408,6 +1409,8 @@ int main(int argc, char *argv[])
free(ifs);
free(args->appl.if_names);
free(args->appl.if_str);
+ args = NULL;
+ odp_mb_full();
if (0 != odp_pool_destroy(pool))
fprintf(stderr, "unable to destroy pool \"pool\"\n");
if (0 != odp_shm_free(shm))
diff --git a/example/l2fwd_simple/odp_l2fwd_simple.c b/example/l2fwd_simple/odp_l2fwd_simple.c
index 7bfa73b75..48f1462dd 100644
--- a/example/l2fwd_simple/odp_l2fwd_simple.c
+++ b/example/l2fwd_simple/odp_l2fwd_simple.c
@@ -32,6 +32,8 @@ static global_data_t *global;
static void sig_handler(int signo ODP_UNUSED)
{
printf("sig_handler!\n");
+ if (global == NULL)
+ return;
global->exit_thr = 1;
}
@@ -281,7 +283,9 @@ int main(int argc, char **argv)
exit(EXIT_FAILURE);
}
- if (odp_shm_free(global->shm)) {
+ global = NULL;
+ odp_mb_full();
+ if (odp_shm_free(shm)) {
printf("Error: shm free global data\n");
exit(EXIT_FAILURE);
}
-----------------------------------------------------------------------
Summary of changes:
example/generator/odp_generator.c | 5 ++++-
example/l2fwd_simple/odp_l2fwd_simple.c | 6 +++++-
test/performance/odp_bench_packet.c | 4 ++++
test/performance/odp_cpu_bench.c | 5 +++++
test/performance/odp_l2fwd.c | 4 ++++
test/performance/odp_sched_pktio.c | 2 ++
6 files changed, 24 insertions(+), 2 deletions(-)
hooks/post-receive
--