Re: [PATCH] libmisc/untar: Support directory create and overwrites. Share the common code.

2016-05-18 Thread Sebastian Huber
On 19/05/16 01:34, Chris Johns wrote: @@ -37,7 +38,9 @@ extern "C" { int Untar_FromMemory(void *tar_buf, size_t size); +int Untar_FromMemory_Verbose(void *tar_buf, size_t size, bool verbose); int Untar_FromFile(const char *tar_name); +int Untar_FromFile_Verbose(const char *tar_name,

[PATCH] libmisc/untar: Support directory create and overwrites. Share the common code.

2016-05-18 Thread Chris Johns
Support creating directories for files with a path depth greater than 1. Some tar files can have files with a path depth greater than 1 and no directory entry in the tar file to create a directory. Support overwriting existing files and directories failing in a similar way to tar on common hosts.

Re: [civetweb] Interface for setting stack size and scheduler options

2016-05-18 Thread Christian Mauderer
Am Dienstag, 17. Mai 2016 21:07:46 UTC+2 schrieb bel: > > > > On Tuesday, May 17, 2016 at 7:50:02 AM UTC+2, Christian Mauderer wrote: >> >> >> The solution with the *start_thread* callback is quite a different >> approach than my original one but it looks like a quite portable solution. >> >> Am

Re: [PATCH] arm/raspberrypi: ensure that RTEMS application image can be started by U-boot.

2016-05-18 Thread Pavel Pisa
Hello Chris and Sebastian, On Wednesday 18 of May 2016 02:23:43 Chris Johns wrote: > > + /* > > + * Current U-boot loader seems to start kernel image > > + * with I and D caches on and MMU enabled. > > + * If RTEMS application image finds that cache is on > > + * during startup then disab

Re: RTEMS in ESA Summer of Code In Space

2016-05-18 Thread Gedare Bloom
Hi Jason, I don't know if it is too late, but I think that combining the ideas in CPU Statistics with some understanding about the Capture Engine and Tracing projects would lead to a good idea. On Fri, Apr 22, 2016 at 10:01 AM, Jason Wong wrote: > Hi Joel, > > Is the project CPU Statistics at >

[PATCH 13/32] score: Split _Thread_Restart()

2016-05-18 Thread Sebastian Huber
Rename _Thread_Restart_self() into _Thread_Do_self_restart(). Split _Thread_Restart() into _Thread_Restart_self() and _Thread_Restart_other(). Avoid Giant lock for thread restart. _Thread_Restart_self() is a no-return function and used by _Thread_Global_construction(). Update #2555. Update #2626

[PATCH 29/32] score: Rename _ISR_Disable_without_giant()

2016-05-18 Thread Sebastian Huber
Rename _ISR_Disable_without_giant() into _ISR_Local_disable(). Rename _ISR_Enable_without_giant() into _ISR_Local_enable(). This is a preparation to remove the Giant lock. Update #2555. --- .../powerpc/shared/include/powerpc-utility.h | 24 +++--- cpukit/rtems/include/rtem

[PATCH 30/32] score: Rename _ISR_Disable() and _ISR_Enable()

2016-05-18 Thread Sebastian Huber
Rename _ISR_Disable() into _ISR_Local_disable(). Rename _ISR_Enable() into _ISR_Local_enable(). Remove _Debug_Is_owner_of_giant(). This is a preparation to remove the Giant lock. Update #2555. --- c/src/lib/libbsp/m68k/gen68360/startup/alloc360.c | 4 +- c/src/lib/libbsp/m68k/mvme167/network

[PATCH 09/32] score: Add _Thread_Join() and _Thread_Cancel()

2016-05-18 Thread Sebastian Huber
Split _Thread_Close() into _Thread_Join() and _Thread_Cancel() to prepare for a re-use in pthread_join() and pthread_cancel(). Update #2555. Update #2626. --- cpukit/libmisc/monitor/mon-prmisc.c | 1 - cpukit/score/include/rtems/score/statesimpl.h | 2 - cpukit/score/include/rtems/sco

[PATCH 22/32] sptests/spintrcritical22: Avoid _Objects_Get()

2016-05-18 Thread Sebastian Huber
Use _Semaphore_Get_interrupt_disable() instead. Update #2555. --- testsuites/sptests/spintrcritical22/init.c | 9 - 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/testsuites/sptests/spintrcritical22/init.c b/testsuites/sptests/spintrcritical22/init.c index 1a377f7..aada98d

[PATCH 32/32] score: Remove the Giant lock

2016-05-18 Thread Sebastian Huber
Update #2555. --- cpukit/score/Makefile.am | 5 - cpukit/score/include/rtems/score/percpu.h | 6 - cpukit/score/include/rtems/score/threaddispatch.h | 175 -- cpukit/score/src/smp.c| 9 -- cpukit/score/src/threa

[PATCH 18/32] score: Avoid Giant lock for _Thread_Start()

2016-05-18 Thread Sebastian Huber
Update #2555. --- cpukit/posix/src/pthreadcreate.c | 8 +--- cpukit/rtems/src/taskstart.c | 58 +++ cpukit/score/include/rtems/score/statesimpl.h | 2 +- cpukit/score/include/rtems/score/threadimpl.h | 18 + cpukit/score/src/mpci.c

[PATCH 16/32] score: Simplify _Thread_Life_action_handler()

2016-05-18 Thread Sebastian Huber
Use _Thread_Change_life_locked() to avoid duplicated code. Avoid Giant lock in _Thread_Life_action_handler(). Update #2555. Update #2626. --- cpukit/score/include/rtems/score/thread.h | 1 - cpukit/score/include/rtems/score/threadimpl.h | 9 --- cpukit/score/src/threadinitialize.c

[PATCH 17/32] posix: Rework pthread_join()

2016-05-18 Thread Sebastian Huber
Rework pthread_join() to use _Thread_Join(). Close #2402. Update #2555. Update #2626. Close #2714. --- cpukit/posix/include/rtems/posix/pthreadimpl.h | 14 --- cpukit/posix/include/rtems/posix/threadsup.h | 4 - cpukit/posix/src/pthread.c | 51 ++ cpukit/posix/sr

[PATCH 28/32] score: _Thread_Dispatch_increment_disable_level()

2016-05-18 Thread Sebastian Huber
Avoid _Thread_Dispatch_increment_disable_level() and _Thread_Dispatch_decrement_disable_level() and thus the Giant lock. This is a preparation to remove the Giant lock. Update #2555. --- c/src/lib/libcpu/sh/sh7032/score/cpu_asm.c| 4 ++-- c/src/lib/libcpu/sh/sh7045/score/cpu_asm.c

[PATCH 31/32] score: Rename _ISR_Flash() into _ISR_Local_flash()

2016-05-18 Thread Sebastian Huber
This is a preparation to remove the Giant lock. Update #2555. --- cpukit/rtems/include/rtems/rtems/intr.h | 2 +- cpukit/rtems/src/intrbody.c | 2 +- cpukit/score/include/rtems/score/isrlevel.h | 2 +- cpukit/score/include/rtems/score/isrlock.h | 4 ++-- testsuites/tmtests/tm

[PATCH 10/32] score: Add _Thread_Set_state_locked()

2016-05-18 Thread Sebastian Huber
This makes it possible to do thread state and thread life changes together under protection of the thread state lock. Update #2555. Update #2626. --- cpukit/score/include/rtems/score/threadimpl.h | 5 + cpukit/score/src/threadsetstate.c | 23 +-- 2 files chang

[PATCH 24/32] score: Delete unused _Thread_Get()

2016-05-18 Thread Sebastian Huber
Update #2555. --- cpukit/score/include/rtems/score/threadimpl.h | 26 -- cpukit/score/src/threadget.c | 22 -- 2 files changed, 48 deletions(-) diff --git a/cpukit/score/include/rtems/score/threadimpl.h b/cpukit/score/include/rtems/sco

[PATCH 23/32] testsuites: Replace _Thread_Get()

2016-05-18 Thread Sebastian Huber
Replace _Thread_Get() with _Thread_Get_interrupt_disable() to avoid the Giant lock. Update #2555. --- testsuites/smptests/smpmigration02/init.c | 8 testsuites/smptests/smpscheduler03/init.c | 8 testsuites/sptests/spintrcritical23/init.c | 9 - testsuites/tmtests/t

[PATCH 21/32] rtems: Avoid Giant lock for rtems_task_delete()

2016-05-18 Thread Sebastian Huber
Update #2555. --- cpukit/rtems/src/taskdelete.c | 76 +-- cpukit/rtems/src/tasks.c | 24 -- 2 files changed, 52 insertions(+), 48 deletions(-) diff --git a/cpukit/rtems/src/taskdelete.c b/cpukit/rtems/src/taskdelete.c index 2e8381c..4f03cbd

[PATCH 27/32] testsuites: Avoid Giant lock

2016-05-18 Thread Sebastian Huber
Replace _Thread_Disable_dispatch() with _Thread_Dispatch_disable(). Replace _Thread_Enable_dispatch() with _Thread_Dispatch_enable(). This is a preparation to remove the Giant lock. Update #2555. --- testsuites/libtests/malloctest/init.c | 8 +-- testsuites/smptests/smpcache01/init.c

[PATCH 19/32] posix: Rework thread cancellation

2016-05-18 Thread Sebastian Huber
Add Thread_Life_state::THREAD_LIFE_CHANGE_DEFERRED and rework the POSIX thread cancellation to use the thread life states. Update #2555. Update #2626. --- cpukit/posix/Makefile.am | 3 +- cpukit/posix/include/rtems/posix/cancel.h | 37 -- cpukit/posix/inc

[PATCH 11/32] score: Add _Thread_Clear_state_locked()

2016-05-18 Thread Sebastian Huber
This makes it possible to do thread state and thread life changes together under protection of the thread state lock. Update #2555. Update #2626. --- cpukit/score/include/rtems/score/threadimpl.h | 5 + cpukit/score/src/threadclearstate.c | 21 - 2 files changed

[PATCH 20/32] posix: Avoid Giant lock for pthread_kill()

2016-05-18 Thread Sebastian Huber
Update #2555. --- cpukit/posix/src/pthreadkill.c | 55 +- 1 file changed, 22 insertions(+), 33 deletions(-) diff --git a/cpukit/posix/src/pthreadkill.c b/cpukit/posix/src/pthreadkill.c index 897f4c5..eb02746 100644 --- a/cpukit/posix/src/pthreadkill.c +++ b

[PATCH 12/32] score: Add _Thread_Dispatch_disable_with_CPU()

2016-05-18 Thread Sebastian Huber
Update #2555. Update #2626. --- cpukit/score/include/rtems/score/threaddispatch.h | 28 +++ 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/cpukit/score/include/rtems/score/threaddispatch.h b/cpukit/score/include/rtems/score/threaddispatch.h index 4ef5538..bf846

[PATCH 26/32] score: Avoid Giant _Objects_Extend_information()

2016-05-18 Thread Sebastian Huber
Avoid Giant lock for _Objects_Extend_information(). Update #2280. Update #2555. --- cpukit/score/src/objectextendinformation.c | 9 - 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/cpukit/score/src/objectextendinformation.c b/cpukit/score/src/objectextendinformation.c inde

[PATCH 25/32] score: Delete unused _Objects_Get()

2016-05-18 Thread Sebastian Huber
Update #2555. --- cpukit/score/Makefile.am | 2 +- cpukit/score/include/rtems/score/object.h | 2 +- cpukit/score/include/rtems/score/objectimpl.h | 116 -- cpukit/score/src/objectget.c | 80 -- 4 files changed,

[PATCH 15/32] score: Rework _Thread_Cancel()

2016-05-18 Thread Sebastian Huber
Rework _Thread_Cancel() to use _Thread_Change_life_locked(). Update #2555. Update #2626. --- cpukit/score/src/threadrestart.c | 85 +++- 1 file changed, 31 insertions(+), 54 deletions(-) diff --git a/cpukit/score/src/threadrestart.c b/cpukit/score/src/threadre

Rework thread life changes and remove Giant lock

2016-05-18 Thread Sebastian Huber
This patch series reworks the thread life changes (cancel, exit, join, etc.) and removes the Giant lock. The following tickes are addressed: https://devel.rtems.org/ticket/2280 https://devel.rtems.org/ticket/2402 https://devel.rtems.org/ticket/2555 https://devel.rtems.org/ticket/2626 https://deve

[PATCH 06/32] score: Add Thread_Change_life()

2016-05-18 Thread Sebastian Huber
Add _Thread_Change_life_locked() as a general function to alter the thread life state. Use it to implement _Thread_Set_life_protection() as a first step. Update #2555. Update #2626. --- cpukit/libcsupport/src/privateenv.c | 10 +-- cpukit/score/include/rtems/score/apimutex.h | 2 +-

[PATCH 04/32] score: Avoid superfluous life protection

2016-05-18 Thread Sebastian Huber
Disable thread dispatching is enough to prevent deletion of the executing thread. There is no need for an additional life protection. Update #2555. Update #2626. --- cpukit/posix/src/pthreadexit.c | 3 --- cpukit/rtems/src/taskdelete.c| 6 -- cpukit/score/src/threadrestart.c | 3 --- 3

[PATCH 14/32] score: Rework _Thread_Restart_other()

2016-05-18 Thread Sebastian Huber
Rework _Thread_Restart_other() to use _Thread_Change_life_locked(). Cope with concurrent change requests by means of a pending request counter. Update #2555. Update #2626. --- cpukit/libmisc/monitor/mon-prmisc.c | 2 +- cpukit/score/include/rtems/score/statesimpl.h | 4 +- cpukit/scor

[PATCH 01/32] psxclassic01: Assume correct pthread_detach()

2016-05-18 Thread Sebastian Huber
Update #2714. --- testsuites/psxtests/psxclassic01/init.c | 35 +-- testsuites/psxtests/psxclassic01/psxclassic01.scn | 6 ++-- 2 files changed, 31 insertions(+), 10 deletions(-) diff --git a/testsuites/psxtests/psxclassic01/init.c b/testsuites/psxtests/psxclassic0

[PATCH 03/32] score: Add _Thread_Exit()

2016-05-18 Thread Sebastian Huber
The goal is to make _Thread_Exit() a no-return function in follow up patches. Update #2555. Update #2626. --- cpukit/posix/src/pthreadexit.c| 9 - cpukit/rtems/src/taskdelete.c | 9 - cpukit/score/include/rtems/score/threadimpl.h | 2 ++ cpukit/s

[PATCH 07/32] score: Add _Thread_Raise_real_priority()

2016-05-18 Thread Sebastian Huber
Update #2555. Update #2626. --- cpukit/score/src/threadrestart.c | 30 -- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/cpukit/score/src/threadrestart.c b/cpukit/score/src/threadrestart.c index 1d131d4..fe9bca1 100644 --- a/cpukit/score/src/threadresta

[PATCH 02/32] score: Delete redundant thread life enums

2016-05-18 Thread Sebastian Huber
This makes it easier to add more states in the future. Update #2555. Update #2626. --- cpukit/score/include/rtems/score/thread.h | 6 +- cpukit/score/include/rtems/score/threadimpl.h | 3 ++- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/cpukit/score/include/rtems/score/t

[PATCH 05/32] score: Delete unused variable

2016-05-18 Thread Sebastian Huber
Update #2555. Update #2626. --- cpukit/score/src/threadrestart.c | 9 +++-- 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/cpukit/score/src/threadrestart.c b/cpukit/score/src/threadrestart.c index 272fe7b..9642370 100644 --- a/cpukit/score/src/threadrestart.c +++ b/cpukit/score/

[PATCH 08/32] score: Rework _Thread_Exit()

2016-05-18 Thread Sebastian Huber
Rework _Thread_Exit() to use _Thread_Change_life_locked(). Update #2555. Update #2626. --- cpukit/score/src/threadrestart.c | 20 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/cpukit/score/src/threadrestart.c b/cpukit/score/src/threadrestart.c index fe9bca1..