Merged,
Maxim.

On 03/31/16 16:08, Bill Fischofer wrote:
This patch series replaces the patches previously submitted with subjects:

ODP API: add control/worker cpumasks to init data -and-
linux-generic: add support for initial cpumasks

The addition of the ability for ODP to accept control and worker
cpumasks from external sources is impacted by the code for fixing
Linaro BUG 2027 <https://bugs.linaro.org/show_bug.cgi?id=2027>.

Consequently I have added the BUG 2027 fix patches
to this API change as prerequisites.

The modifications presented here accomplish the following:
   (1) fix the validation and performance tests as needed in order to
       prevent hanging in barrier-wait due to deprecated means of
       determining the number of CPUs available for worker threads
   (2) replace the 'CPU affinity' based methods of determining the set
       of installed CPUs with logic which works regardless of the
       isolation / NO_HZ_FULL support in the underlying kernel
   (3) default to reasonable non-overlapping control and worker cpumasks
       conforming to suggestions from Petri S.
   (4) extend the ODP API to add control and worker cpumasks to the
       initialization data recognized by odp_init_global() -and-
   (5) allow externally specified control and/or worker cpumasks to
       safely override the default cpumask settings when
       odp_init_global() is called

The new initialization odp_cpumask_t pointers have been given 'const'
qualifiers in order to make it clear that the cpumasks are not to be
modified by any functions receiving them as parameters.

Change in v7: Add CPUMASK_INIT stage for odp_init_global() and
               odp_term_global()

Gary S. Robertson (5):
   test: correct worker count calculation
   test: allow more than one control cpu
   linux-generic: Make cpu detection work with NO_HZ_FULL
   api: init: add control/worker cpumasks to init data
   linux-generic: add support for initial cpumasks

  include/odp/api/spec/init.h                   |  27 +++
  platform/linux-generic/include/odp_internal.h |  34 ++--
  platform/linux-generic/odp_cpumask.c          | 275 ++++++++++++++++++++++++++
  platform/linux-generic/odp_cpumask_task.c     |  70 ++++---
  platform/linux-generic/odp_init.c             |  17 +-
  platform/linux-generic/odp_system_info.c      |  13 +-
  test/validation/cpumask/cpumask.c             |   2 +-
  test/validation/shmem/shmem.c                 |   3 +-
  test/validation/timer/timer.c                 |  18 +-
  9 files changed, 398 insertions(+), 61 deletions(-)


_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to