On 06/20 19:38:59, Bill Fischofer wrote:
> Now that master has been merged back into api-next I can confirm that
> make distcheck fails for 64-bit systems as well, so I need to withdraw
> my earlier reviewed-and-tested-by until that is fixed.

This appears to be a problem in pristine upstream as well. "make distcheck"
is broken on ARM (and likely all non-x86 archs).

The issue is that in platform/linux-generic/Makefile.am "if ARCH_IS_X86"
is always true. I have not yet found a workaround..

> On Mon, Jun 19, 2017 at 6:13 PM, Bill Fischofer
> <bill.fischo...@linaro.org> wrote:
> > Looks like I posted a wee bit too soon. On a 32-bit system:
> >
> > bill@Ub16-32:~/linaro/armschedv9$ make distcheck
> > make  dist-gzip am__post_remove_distdir='@:'
> > make[1]: Entering directory '/home/bill/linaro/armschedv9'
> > if test -d "opendataplane-1.14.0.0"; then find
> > "opendataplane-1.14.0.0" -type d ! -perm -200 -exec chmod u+w {} ';'
> > && rm -rf "opendataplane-1.14.0.0" || { sleep 5 && rm -rf
> > "opendataplane-1.14.0.0"; }; else :; fi
> > test -d "opendataplane-1.14.0.0" || mkdir "opendataplane-1.14.0.0"
> >  (cd platform/linux-generic && make
> > top_distdir=../../opendataplane-1.14.0.0
> > distdir=../../opendataplane-1.14.0.0/platform/linux-generic \
> >      am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: 
> > distdir)
> > make[2]: Entering directory
> > '/home/bill/linaro/armschedv9/platform/linux-generic'
> > make[2]: *** No rule to make target 'arch/x86/odp_atomic.h', needed by
> > 'distdir'.  Stop.
> > make[2]: Leaving directory 
> > '/home/bill/linaro/armschedv9/platform/linux-generic'
> > Makefile:603: recipe for target 'distdir' failed
> > make[1]: *** [distdir] Error 1
> > make[1]: Leaving directory '/home/bill/linaro/armschedv9'
> > Makefile:702: recipe for target 'dist' failed
> > make: *** [dist] Error 2
> >
> > On Mon, Jun 19, 2017 at 6:11 PM, Bill Fischofer
> > <bill.fischo...@linaro.org> wrote:
> >> For the v9 series:
> >>
> >> Reviewed-and-tested-by: Bill Fischofer <bill.fischo...@linaro.org>
> >>
> >> I also verified that there are no conflicts between this series and
> >> Petri's queue cleanup patch, so this can apply and run just fine on
> >> top of it. Maxim should be able to merge both tomorrow.
> >>
> >> On Mon, Jun 19, 2017 at 2:12 PM, Brian Brooks <brian.bro...@arm.com> wrote:
> >>> This work derives from Ola Liljedahl's prototype [1] which introduced a
> >>> scalable scheduler design based on primarily lock-free algorithms and
> >>> data structures designed to decrease contention. A thread searches
> >>> through a data structure containing only queues that are both non-empty
> >>> and allowed to be scheduled to that thread. Strict priority scheduling is
> >>> respected, and (W)RR scheduling may be used within queues of the same 
> >>> priority.
> >>> Lastly, pre-scheduling or stashing is not employed since it is optional
> >>> functionality that can be implemented in the application.
> >>>
> >>> In addition to scalable ring buffers, the algorithm also uses unbounded
> >>> concurrent queues. LL/SC and CAS variants exist in cases where absense of
> >>> ABA problem cannot be proved, and also in cases where the compiler's 
> >>> atomic
> >>> built-ins may not be lowered to the desired instruction(s). Finally, a 
> >>> version
> >>> of the algorithm that uses locks is also provided.
> >>>
> >>> Use --enable-schedule-scalable to conditionally compile this scheduler
> >>> into the library.
> >>>
> >>> [1] https://lists.linaro.org/pipermail/lng-odp/2016-September/025682.html
> >>>
> >>> On checkpatch.pl:
> >>>  - [2/6] and [5/6] have checkpatch.pl issues that are superfluous
> >>>
> >>> v9:
> >>>  - Include patch to enable scalable scheduler in Travis CI
> >>>  - Fix 'make distcheck'
> >>>
> >>> v8:
> >>>  - Reword commit messages
> >>>
> >>> v7:
> >>>  - Rebase against new modular queue interface
> >>>  - Duplicate arch files under mips64 and powerpc
> >>>  - Fix sched->order_lock()
> >>>  - Loop until all deferred events have been enqueued
> >>>  - Implement ord_enq_multi()
> >>>  - Fix ordered_lock/unlock
> >>>  - Revert stylistic changes
> >>>  - Add default xfactor
> >>>  - Remove changes to odp_sched_latency
> >>>  - Remove ULL suffix to alleviate Clang build
> >>>
> >>> v6:
> >>>  - Move conversions into scalable scheduler to alleviate #ifdefs
> >>>  - Remove unnecessary prefetch
> >>>  - Fix ARMv8 build
> >>>
> >>> v5:
> >>>  - Allocate cache aligned memory using shm pool APIs
> >>>  - Move more code to scalable scheduler specific files
> >>>  - Remove CONFIG_SPLIT_READWRITE
> >>>  - Fix 'make distcheck' issue
> >>>
> >>> v4:
> >>>  - Fix a couple more checkpatch.pl issues
> >>>
> >>> v3:
> >>>  - Only conditionally compile scalable scheduler and queue
> >>>  - Move some code to arch/ dir
> >>>  - Use a single shm block for queues instead of block-per-queue
> >>>  - De-interleave odp_llqueue.h
> >>>  - Use compiler macros to determine ATOM_BITSET_SIZE
> >>>  - Incorporated queue size changes
> >>>  - Dropped 'ODP_' prefix on config and moved to other files
> >>>  - Dropped a few patches that were send independently to the list
> >>>
> >>> v2:
> >>>  - Move ARMv8 issues and other fixes into separate patches
> >>>  - Abstract away some #ifdefs
> >>>  - Fix some checkpatch.pl warnings
> >>>
> >>> Brian Brooks (5):
> >>>   test: odp_pktio_ordered: add queue size
> >>>   linux-gen: sched scalable: add arch files
> >>>   linux-gen: sched scalable: add a bitset
> >>>   linux-gen: sched scalable: add a concurrent queue
> >>>   linux-gen: sched scalable: add scalable scheduler
> >>>
> >>> Honnappa Nagarahalli (1):
> >>>   travis: add scalable scheduler in CI
> >>>
> >>>  .travis.yml                                        |    1 +
> >>>  configure.ac                                       |    1 +
> >>>  platform/linux-generic/Makefile.am                 |   17 +
> >>>  platform/linux-generic/arch/arm/odp_atomic.h       |  210 +++
> >>>  platform/linux-generic/arch/arm/odp_cpu.h          |   65 +
> >>>  platform/linux-generic/arch/arm/odp_cpu_idling.h   |   51 +
> >>>  platform/linux-generic/arch/arm/odp_llsc.h         |  249 +++
> >>>  platform/linux-generic/arch/default/odp_cpu.h      |   41 +
> >>>  platform/linux-generic/arch/mips64/odp_cpu.h       |   41 +
> >>>  platform/linux-generic/arch/powerpc/odp_cpu.h      |   41 +
> >>>  platform/linux-generic/arch/x86/odp_cpu.h          |   41 +
> >>>  .../include/odp/api/plat/schedule_types.h          |    4 +-
> >>>  platform/linux-generic/include/odp_bitset.h        |  210 +++
> >>>  .../linux-generic/include/odp_config_internal.h    |   17 +-
> >>>  platform/linux-generic/include/odp_llqueue.h       |  309 +++
> >>>  .../include/odp_queue_scalable_internal.h          |  102 +
> >>>  platform/linux-generic/include/odp_schedule_if.h   |    2 +-
> >>>  .../linux-generic/include/odp_schedule_scalable.h  |  137 ++
> >>>  .../include/odp_schedule_scalable_config.h         |   55 +
> >>>  .../include/odp_schedule_scalable_ordered.h        |  132 ++
> >>>  platform/linux-generic/m4/odp_schedule.m4          |   55 +-
> >>>  platform/linux-generic/odp_queue_if.c              |    8 +
> >>>  platform/linux-generic/odp_queue_scalable.c        | 1020 ++++++++++
> >>>  platform/linux-generic/odp_schedule_if.c           |    6 +
> >>>  platform/linux-generic/odp_schedule_scalable.c     | 1978 
> >>> ++++++++++++++++++++
> >>>  .../linux-generic/odp_schedule_scalable_ordered.c  |  347 ++++
> >>>  test/common_plat/performance/odp_pktio_ordered.c   |    4 +
> >>>  27 files changed, 5122 insertions(+), 22 deletions(-)
> >>>  create mode 100644 platform/linux-generic/arch/arm/odp_atomic.h
> >>>  create mode 100644 platform/linux-generic/arch/arm/odp_cpu.h
> >>>  create mode 100644 platform/linux-generic/arch/arm/odp_cpu_idling.h
> >>>  create mode 100644 platform/linux-generic/arch/arm/odp_llsc.h
> >>>  create mode 100644 platform/linux-generic/arch/default/odp_cpu.h
> >>>  create mode 100644 platform/linux-generic/arch/mips64/odp_cpu.h
> >>>  create mode 100644 platform/linux-generic/arch/powerpc/odp_cpu.h
> >>>  create mode 100644 platform/linux-generic/arch/x86/odp_cpu.h
> >>>  create mode 100644 platform/linux-generic/include/odp_bitset.h
> >>>  create mode 100644 platform/linux-generic/include/odp_llqueue.h
> >>>  create mode 100644 
> >>> platform/linux-generic/include/odp_queue_scalable_internal.h
> >>>  create mode 100644 platform/linux-generic/include/odp_schedule_scalable.h
> >>>  create mode 100644 
> >>> platform/linux-generic/include/odp_schedule_scalable_config.h
> >>>  create mode 100644 
> >>> platform/linux-generic/include/odp_schedule_scalable_ordered.h
> >>>  create mode 100644 platform/linux-generic/odp_queue_scalable.c
> >>>  create mode 100644 platform/linux-generic/odp_schedule_scalable.c
> >>>  create mode 100644 platform/linux-generic/odp_schedule_scalable_ordered.c
> >>>
> >>> --
> >>> 2.13.1
> >>>

Reply via email to