Message ID | 1483963391-5959-1-git-send-email-balakrishna.garapati@linaro.org |
---|---|
State | Superseded |
Headers | show |
On 9 January 2017 at 07:03, Balakrishna Garapati < balakrishna.garapati@linaro.org> wrote: > This will resolve the test in ci when using cgroups > Can you just add a line saying what the issue was, it is easier to decided if the patch achieves that > Signed-off-by: Balakrishna Garapati <balakrishna.garapati@linaro.org> --- > example/hello/odp_hello.c | 19 ++++++++++++++++--- > 1 file changed, 16 insertions(+), 3 deletions(-) > > diff --git a/example/hello/odp_hello.c b/example/hello/odp_hello.c > index 6d114ee..59a31b2 100644 > --- a/example/hello/odp_hello.c > +++ b/example/hello/odp_hello.c > @@ -60,16 +60,29 @@ int main(int argc, char *argv[]) > options_t opt; > pid_t pid; > cpu_set_t cpu_set; > - int i; > + int i, ret, first_cpu = 0, cpu; > + > + pid = getpid(); > + ret = sched_getaffinity(pid, sizeof(cpu_set_t), &cpu_set); > + if (ret < 0) { > + printf("get CPU affinity failed.\n"); > + return -1; > + } > + > + for (cpu = 0; cpu < CPU_SETSIZE; cpu++) { > + if (CPU_ISSET(cpu, &cpu_set)) { > + first_cpu = cpu; > + break; > + } > + } > > memset(&opt, 0, sizeof(opt)); > - opt.cpu = 0; > + opt.cpu = first_cpu; > opt.num = 1; > > if (parse_args(argc, argv, &opt)) > return -1; > > - pid = getpid(); > CPU_ZERO(&cpu_set); > CPU_SET(opt.cpu, &cpu_set); > > -- > 1.9.1 > > -- Mike Holmes Program Manager - Linaro Networking Group Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs "Work should be fun and collaborative, the rest follows"
diff --git a/example/hello/odp_hello.c b/example/hello/odp_hello.c index 6d114ee..59a31b2 100644 --- a/example/hello/odp_hello.c +++ b/example/hello/odp_hello.c @@ -60,16 +60,29 @@ int main(int argc, char *argv[]) options_t opt; pid_t pid; cpu_set_t cpu_set; - int i; + int i, ret, first_cpu = 0, cpu; + + pid = getpid(); + ret = sched_getaffinity(pid, sizeof(cpu_set_t), &cpu_set); + if (ret < 0) { + printf("get CPU affinity failed.\n"); + return -1; + } + + for (cpu = 0; cpu < CPU_SETSIZE; cpu++) { + if (CPU_ISSET(cpu, &cpu_set)) { + first_cpu = cpu; + break; + } + } memset(&opt, 0, sizeof(opt)); - opt.cpu = 0; + opt.cpu = first_cpu; opt.num = 1; if (parse_args(argc, argv, &opt)) return -1; - pid = getpid(); CPU_ZERO(&cpu_set); CPU_SET(opt.cpu, &cpu_set);
This will resolve the test in ci when using cgroups Signed-off-by: Balakrishna Garapati <balakrishna.garapati@linaro.org> --- example/hello/odp_hello.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) -- 1.9.1