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 320bb2e9a29256de37bfdb10b9dde3fd0f0d4a5d (commit)
from 65d66b94d66e6b954f3430b90a67eaeca7bf37c6 (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 320bb2e9a29256de37bfdb10b9dde3fd0f0d4a5d
Author: Balakrishna Garapati <balakrishna.garapati(a)linaro.org>
Date: Tue Dec 6 15:15:49 2016 +0100
platform: linux-generic: reading cpu affinity from cpuset
With this new proposal cpu affinity is read correctly especially
when using cgroups otherwise wrong cpu mask is set.
Fixes bug: https://bugs.linaro.org/show_bug.cgi?id=2472
Signed-off-by: Balakrishna Garapati <balakrishna.garapati(a)linaro.org>
Reviewed-and-tested-by: Yi He <yi.he(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/odp_cpumask.c b/platform/linux-generic/odp_cpumask.c
index 6bf2632..64559a6 100644
--- a/platform/linux-generic/odp_cpumask.c
+++ b/platform/linux-generic/odp_cpumask.c
@@ -225,73 +225,36 @@ int odp_cpumask_next(const odp_cpumask_t *mask, int cpu)
* This function obtains system information specifying which cpus are
* available at boot time.
*/
-static int get_installed_cpus(void)
+static int get_available_cpus(void)
{
- char *numptr;
- char *endptr;
- long int cpu_idnum;
- DIR *d;
- struct dirent *dir;
+ int cpu_idnum;
+ cpu_set_t cpuset;
+ int ret;
/* Clear the global cpumasks for control and worker CPUs */
odp_cpumask_zero(&odp_global_data.control_cpus);
odp_cpumask_zero(&odp_global_data.worker_cpus);
- /*
- * Scan the /sysfs pseudo-filesystem for CPU info directories.
- * There should be one subdirectory for each installed logical CPU
- */
- d = opendir("/sys/devices/system/cpu");
- if (d) {
- while ((dir = readdir(d)) != NULL) {
- cpu_idnum = CPU_SETSIZE;
-
- /*
- * If the current directory entry doesn't represent
- * a CPU info subdirectory then skip to the next entry.
- */
- if (dir->d_type == DT_DIR) {
- if (!strncmp(dir->d_name, "cpu", 3)) {
- /*
- * Directory name starts with "cpu"...
- * Try to extract a CPU ID number
- * from the remainder of the dirname.
- */
- errno = 0;
- numptr = dir->d_name;
- numptr += 3;
- cpu_idnum = strtol(numptr, &endptr,
- 10);
- if (errno || (endptr == numptr))
- continue;
- } else {
- continue;
- }
- } else {
- continue;
- }
- /*
- * If we get here the current directory entry specifies
- * a CPU info subdir for the CPU indexed by cpu_idnum.
- */
+ CPU_ZERO(&cpuset);
+ ret = sched_getaffinity(0, sizeof(cpuset), &cpuset);
- /* Track number of logical CPUs discovered */
- if (odp_global_data.num_cpus_installed <
- (int)(cpu_idnum + 1))
- odp_global_data.num_cpus_installed =
- (int)(cpu_idnum + 1);
+ if (ret < 0) {
+ ODP_ERR("Failed to get cpu affinity");
+ return -1;
+ }
+ for (cpu_idnum = 0; cpu_idnum < CPU_SETSIZE - 1; cpu_idnum++) {
+ if (CPU_ISSET(cpu_idnum, &cpuset)) {
+ odp_global_data.num_cpus_installed++;
/* Add the CPU to our default cpumasks */
odp_cpumask_set(&odp_global_data.control_cpus,
- (int)cpu_idnum);
+ (int)cpu_idnum);
odp_cpumask_set(&odp_global_data.worker_cpus,
- (int)cpu_idnum);
+ (int)cpu_idnum);
}
- closedir(d);
- return 0;
- } else {
- return -1;
}
+
+ return 0;
}
/*
@@ -429,7 +392,7 @@ int odp_cpumask_init_global(const odp_init_t *params)
* Initialize the global control and worker cpumasks with lists of
* all installed CPUs. Return an error if this procedure fails.
*/
- if (!get_installed_cpus()) {
+ if (!get_available_cpus()) {
if (params) {
if (params->control_cpus) {
/*
-----------------------------------------------------------------------
Summary of changes:
platform/linux-generic/odp_cpumask.c | 73 +++++++++---------------------------
1 file changed, 18 insertions(+), 55 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 65d66b94d66e6b954f3430b90a67eaeca7bf37c6 (commit)
from ba9fedae2040d39f71fa8aee6db9512c5cfe21e4 (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 65d66b94d66e6b954f3430b90a67eaeca7bf37c6
Author: Mike Holmes <mike.holmes(a)linaro.org>
Date: Fri Dec 2 10:55:36 2016 -0500
helper: remove unused variable
Signed-off-by: Mike Holmes <mike.holmes(a)linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/helper/linux.c b/helper/linux.c
index bb4b22c..7bd0b07 100644
--- a/helper/linux.c
+++ b/helper/linux.c
@@ -295,7 +295,6 @@ static int odph_linux_process_create(odph_odpthread_t *thread_tbl,
int cpu,
const odph_odpthread_params_t *thr_params)
{
- int ret;
cpu_set_t cpu_set;
pid_t pid;
-----------------------------------------------------------------------
Summary of changes:
helper/linux.c | 1 -
1 file changed, 1 deletion(-)
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 900c9ca3d4099178a328433d32d84a825264aaa1 (commit)
via d660e0e1647d7f1a6c6698b6f1b79b4590b84e1f (commit)
from 42d0b99c453f269fbe21cc92652440bdbbd10ba4 (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 900c9ca3d4099178a328433d32d84a825264aaa1
Author: Mike Holmes <mike.holmes(a)linaro.org>
Date: Wed Dec 7 14:43:25 2016 -0500
configure: remove duplicate info
Signed-off-by: Mike Holmes <mike.holmes(a)linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/configure.ac b/configure.ac
index a9bd098..20ec479 100644
--- a/configure.ac
+++ b/configure.ac
@@ -344,7 +344,6 @@ AC_MSG_RESULT([
static libraries: ${enable_static}
shared libraries: ${enable_shared}
ABI compatible: ${abi_compat}
- ODP_ABI_COMPAT: ${ODP_ABI_COMPAT}
cunit: ${cunit_support}
test_vald: ${test_vald}
test_perf: ${test_perf}
commit d660e0e1647d7f1a6c6698b6f1b79b4590b84e1f
Author: Mike Holmes <mike.holmes(a)linaro.org>
Date: Wed Dec 7 14:43:24 2016 -0500
configure: if no ABI reset .so to 0
Signed-off-by: Mike Holmes <mike.holmes(a)linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/configure.ac b/configure.ac
index 3e89b0a..a9bd098 100644
--- a/configure.ac
+++ b/configure.ac
@@ -254,6 +254,8 @@ AC_ARG_ENABLE([abi-compat],
ODP_ABI_COMPAT=0
abi_compat=no
enable_shared=no
+ #if there is no ABI compatibility the .so numbers are meaningless
+ ODP_LIBSO_VERSION=0:0:0
fi])
AC_SUBST(ODP_ABI_COMPAT)
-----------------------------------------------------------------------
Summary of changes:
configure.ac | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
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, monarch_lts has been updated
via 5481d365e81f35d940b7eb3bd57ef5246332f4d5 (commit)
from 6dac46d9c8dd8cc1f27638215704effcf6269baf (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 5481d365e81f35d940b7eb3bd57ef5246332f4d5
Author: Mike Holmes <mike.holmes(a)linaro.org>
Date: Thu Dec 1 14:28:20 2016 -0500
configure.ac: fix builds from raw git tar
Signed-off-by: Mike Holmes <mike.holmes(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/configure.ac b/configure.ac
index 48fe0be..5c7ddd0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
AC_PREREQ([2.5])
-AC_INIT([OpenDataPlane], m4_esyscmd(./scripts/git_hash.sh .), [lng-odp(a)lists.linaro.org])
+AC_INIT([OpenDataPlane], m4_esyscmd_s(./scripts/git_hash.sh .), [lng-odp(a)lists.linaro.org])
AM_INIT_AUTOMAKE([1.9 tar-pax subdir-objects])
AC_CONFIG_SRCDIR([helper/config.h.in])
AM_CONFIG_HEADER([helper/config.h])
-----------------------------------------------------------------------
Summary of changes:
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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, api-next has been updated
via f0d6c01a0fb51904d5dd049be8402531ec185dcc (commit)
from 10f2f857f6a38c89afff6bdfcc932e18e49ca9a2 (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 f0d6c01a0fb51904d5dd049be8402531ec185dcc
Author: Christophe Milard <christophe.milard(a)linaro.org>
Date: Fri Nov 25 15:39:33 2016 +0100
linux-gen: _fdserver: request sigterm if parent dies
_fdserver now request SIGTERM if parent process (ODP instantiation
process) dies, hence avoiding it to become orphan and reattached to the
init process.
Signed-off-by: Christophe Milard <christophe.milard(a)linaro.org>
Reviewed-by: Mike Holmes <mike.holmes(a)linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov(a)linaro.org>
diff --git a/platform/linux-generic/_fdserver.c b/platform/linux-generic/_fdserver.c
index 41a630b..9aed7a9 100644
--- a/platform/linux-generic/_fdserver.c
+++ b/platform/linux-generic/_fdserver.c
@@ -41,6 +41,8 @@
#include <odp_internal.h>
#include <odp_debug_internal.h>
#include <_fdserver_internal.h>
+#include <sys/prctl.h>
+#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
@@ -622,6 +624,10 @@ int _odp_fdserver_init_global(void)
/* TODO: pin the server on appropriate service cpu mask */
/* when (if) we can agree on the usage of service mask */
+ /* request to be killed if parent dies, hence avoiding */
+ /* orphans being "adopted" by the init process... */
+ prctl(PR_SET_PDEATHSIG, SIGTERM);
+
/* allocate the space for the file descriptor<->key table: */
fd_table = malloc(FDSERVER_MAX_ENTRIES * sizeof(fdentry_t));
if (!fd_table) {
-----------------------------------------------------------------------
Summary of changes:
platform/linux-generic/_fdserver.c | 6 ++++++
1 file changed, 6 insertions(+)
hooks/post-receive
--