Commit Graph

872 Commits

Author SHA1 Message Date
Gregory Nutt
e42b3040ee Fix some issues with the initial implementation of sched_mergeprioritized. 2016-03-24 07:52:27 -06:00
Gregory Nutt
b5afc187ee Add file missed in last commit; sched_lock() and sched_mergepending() now use sched_mergeprioritized() 2016-03-23 08:58:48 -06:00
Gregory Nutt
4a962a36dd Add library functions to concatenate and move lists. Add scheduler function to merge prioritized function to merge prioritized lists (not yet used). 2016-03-23 08:00:58 -06:00
Gregory Nutt
f0671bae2f SMP: Reorder some logic related to task exit() and restart() for logic of SMP. 2016-03-22 18:19:57 -06:00
Gregory Nutt
9604ea8f42 SMP: Straighten up some scheduler locking logic -- need to REVISIT 2016-03-22 13:01:47 -06:00
Gregory Nutt
3b2e94e1fd SMP: Fix some errors when removing a trask from the assigned task list 2016-03-22 11:08:30 -06:00
linfei_chen
4b18b8d1e3 LP Work Queue: Fix test to find and idle worker thread. 2016-03-22 08:15:49 -06:00
Gregory Nutt
bc325bd597 Update Kconfig comments 2016-03-21 18:28:43 -06:00
Gregory Nutt
d20db82fcb Scheduler instrumentation: Fix some associated with monitoring critical sections 2016-03-21 17:08:07 -06:00
Gregory Nutt
adf3c73219 scheduler instrumentation: Improvements to buffering logic 2016-03-21 15:40:01 -06:00
Gregory Nutt
ccbf514233 Add task state to information recorded when a task is suspended 2016-03-21 15:24:15 -06:00
Gregory Nutt
f7b58e9dfd sched/: Move location (and form) of context switch instrumentation. 2016-03-21 14:08:31 -06:00
Gregory Nutt
242f8ff25f drivers/syslog/note_driver.c: Add a driver that will allow an application to read buffered scheduler instrumentation data 2016-03-17 14:46:00 -06:00
Gregory Nutt
7f19631338 sched/: Add option to buffer scheduler instrumentation data in memory. 2016-03-17 09:49:43 -06:00
Gregory Nutt
2225940155 SMP: Add per-CPU initialization logic 2016-03-13 07:16:56 -06:00
Gregory Nutt
79c1fa5bd7 SMP: Simplified SMP interfaces 2016-03-12 15:29:33 -06:00
Gregory Nutt
320b70ebad Update submodules 2016-03-12 13:24:38 -06:00
Gregory Nutt
24468128de TLS: Simplify 2016-03-11 07:17:32 -06:00
Gregory Nutt
934069e422 TLS: Add logic to get/set arbitrary TLS values 2016-03-10 19:31:22 -06:00
Gregory Nutt
30b6ee96c9 Add basic definitions for TLS support 2016-03-10 11:56:33 -06:00
Gregory Nutt
9b5e88af71 Update some comments 2016-03-06 13:50:26 -06:00
Gregory Nutt
5d63cd85c7 sched/semaphore: Add an internal interface to reset a semaphore count. 2016-03-05 07:33:24 -06:00
Gregory Nutt
d0c09771db sched: Recent change of ASSERT to DEBUGASSERT causes a crash when debug is diabled because there is a critical function call within the assertion 2016-02-23 10:27:40 -06:00
Gregory Nutt
7cb35587a3 Correct minor typos in a Kconfig file 2016-02-22 08:28:33 -06:00
Gregory Nutt
0fb035f76b Standardize some naming in code section comments 2016-02-21 18:09:04 -06:00
Gregory Nutt
143d287f11 Fix some missing header file inclusions and a misplaced semi-colon from recent commits 2016-02-21 11:27:55 -06:00
Gregory Nutt
c929db42f9 Fix some bad SMP logic in sched_removereadytorun.c 2016-02-20 08:07:54 -06:00
Gregory Nutt
883a1adfe2 Implement sched_setaffinity() and sched_getaffinity() 2016-02-19 19:18:54 -06:00
Gregory Nutt
5a590e99b9 Add SYSCALLS for pthread_setaffinity() and pthread_getaffinity() 2016-02-19 18:13:06 -06:00
Gregory Nutt
1b5e296cf2 Add pthread_setaffinity() and pthread_getaffinity() 2016-02-19 17:59:19 -06:00
Gregory Nutt
a633353ec3 Add a CPU affinity set to the TCB if SMP is enable and use this CPU set as a mask for determining which CPUs the thread may run on. Add an affinity field to the attrributes to permit controlling which CPUs a pthread may run on. Implements pthread_att_setaffinity_np() and pthread_attr_getaffinity_np(). 2016-02-19 17:33:35 -06:00
Gregory Nutt
72d3920295 Rename cpuset_t to cpu_set_t which is the type used in some non-standard Linux/GNU interfaces. Move definitions of cpu_set_t to include/sys/types.h. Add prototypes for sched_setaffinity(), sched_getaffinity(), pthread_attr_setaffinity_np(), pthread_attr_getaffinity_np(), pthread_setaffinity_np(), and pthread_getaffinity_np(). No implementation is yet in place. 2016-02-19 15:57:07 -06:00
Gregory Nutt
3994b094c5 Remove some empty C file section comments; Update some text in TODO file 2016-02-19 10:01:15 -06:00
Gregory Nutt
94bea6547b Fix two unterminated strings in Kconfig files 2016-02-18 17:13:03 -06:00
Gregory Nutt
6d97249348 Trivial, cosmetic changes 2016-02-18 14:56:48 -06:00
Gregory Nutt
1780000777 SMP: Setting bit for wrong CPU. Assertion has cause false alarm crashes.. 2016-02-18 12:31:21 -06:00
Gregory Nutt
7d9287958f Minor simplication to last commit; Update TODO list 2016-02-18 09:21:43 -06:00
Gregory Nutt
52fbbaf778 1. SMP: Fix an assertion. SMP-specific change accidentally made in non-SMP code
2. Move list of signal actions from the task TCB to the task group.  Signal handlers are a property of the entire task group and not of individual threads in the group.  I know, I preferred it the other way too but this is more compliant with POSIX.
2016-02-18 08:34:54 -06:00
Gregory Nutt
720343612b Remove some empty file section section header comments 2016-02-17 18:05:03 -06:00
Gregory Nutt
6543c570d4 Remove some empty file section section header comments 2016-02-17 17:38:39 -06:00
Gregory Nutt
970b34ae8f Remove some empty file section section header comments 2016-02-17 17:17:44 -06:00
Gregory Nutt
a20863f6c0 Remove some empty file section section header comments 2016-02-17 17:15:08 -06:00
Gregory Nutt
b71907888e Remove some empty file section section header comments 2016-02-17 17:04:51 -06:00
Gregory Nutt
269c242f7b Update TODO list 2016-02-17 16:51:58 -06:00
Gregory Nutt
95735519dd SMP: Cosmetic renaming to clarify functionality of SMP interfaces. Update comments. 2016-02-17 13:36:25 -06:00
Gregory Nutt
b50325bb38 SMP: Add funtions to perform atomic bit set/clear operations; fix two errors in SMP macros 2016-02-17 13:20:01 -06:00
Gregory Nutt
8ac12839c3 leave_critical_section: Fix text of whether spinlock should be released or not 2016-02-17 10:55:18 -06:00
Gregory Nutt
d6912d0b00 Fix some bad conditional compilation and other typos in last commit 2016-02-16 20:11:25 -06:00
Gregory Nutt
6aeb4a52e8 Performance improvement: Idle loop should not take MM semaphore if there is not garbage to be collected. This can cause loss of performance and thrashing in tasking 2016-02-16 19:33:22 -06:00
Gregory Nutt
6dfa72d038 SMP: Fix some dumb but difficult to debug errors 2016-02-16 16:43:19 -06:00