On 10 January 2017 at 10:30, Maxim Uvarov <maxim.uva...@linaro.org> wrote:

> On 01/10/17 18:08, Mike Holmes wrote:
> >
> >
> > On 10 January 2017 at 10:02, Maxim Uvarov <maxim.uva...@linaro.org
> > <mailto:maxim.uva...@linaro.org>> wrote:
> >
> >     after one more look at this I think we need to remove affinity
> setting
> >     from hello word app. It's really not needed and not related to odp.
> >
> >
> > As a hello world, is it not useful to describe general usage ?
> > I don't disagree with you, just asking if it helps to keep it.
> >
>
> I think Hello world has to be minimal app. ODP can work with not bind to
> cpu threads. But it will be good if 'hello' app will not any linux
> specifics and can run on all environments like bare metal.
>

Makes sence


>
> Maxim.
>
>
>
>
> >
> >
> >     Maxim.
> >
> >     On 01/10/17 05:52, Balakrishna Garapati wrote:
> >     > This will resolve the test in ci when using cgroups.
> >     > odp_hello app fails to set cpu affinity to zero all ways
> >     > when cgroup doesn't include that cpu in the set.
> >     >
> >     > Fixes: https://bugs.linaro.org/show_bug.cgi?id=2806
> >     <https://bugs.linaro.org/show_bug.cgi?id=2806>
> >     >
> >     > Signed-off-by: Balakrishna Garapati
> >     <balakrishna.garap...@linaro.org
> >     <mailto:balakrishna.garap...@linaro.org>>
> >     > ---
> >     >
> >     >  since v2: Added link to bug
> >     >
> >     >  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"
> >
> > __
> >
> >
>
>


-- 
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"

Reply via email to