Gregory Nutt
419c4cb6be
A little more progress toward the implementation of per-window framebuffers. Still missing:
...
- Logic that generates the low lever framebuffer renderers for the per-window framebuffers,
- The logic that picks off the per-window framebuffer updates from normal graphics device updates. This logic must update both the per-window framebuffer and the graphics device (from the framebuffer).
Squashed commit of the following:
graphics: Add logic to allocate the per-window framebuffer.
graphics: A few fragmentary thoughts on how a per-window framebuffer could be represented and allocated.
2019-03-14 11:20:14 -06:00
Gregory Nutt
a2e62f557d
Squashed commit of the following:
...
sched/init/nx_bringup.c: Fix a naming collision.
sched/init: Rename os_start() to nx_start()
sched/init: Rename os_smp* to nx_smp*
sched/init: Rename os_bringup to nx_bringup
sched/init: rename all internal static functions to begin with nx_ vs os_
2019-02-04 16:20:35 -06:00
Gregory Nutt
90e4cf4349
mm/umm_heap: sbrk() is only available in the KERNEL build.
2019-02-04 10:32:31 -06:00
Xiang Xiao
fe421022e2
sched/wqueue/kwork_notifier.c and several Kconfig files: Notifier should work with either lpwork or hpwork and other minor typo fix.
2019-01-27 11:02:56 -06:00
Xiang Xiao
b6606e61b4
mm/iob/iob_copyin.c: iob_copyin() should wait for each buffer and adjust the return value of iob_copyin_internal return to simplify the code
2019-01-26 10:48:47 -06:00
Xiang Xiao
2671709e62
mm/umm_heap: Ensure all user allocation try sbrk before fail
2019-01-26 10:42:36 -06:00
Xiang Xiao
3047ef80dc
mm/mm_gran/mm_graninfo.c: Fix the wrong data in g_1bit_info and make the internal function static
2019-01-26 10:30:50 -06:00
Xiang Xiao
7d813fb6d3
mm/mm_gran/mm_pgalloc.c: mm/pgalloc: shouldn't just allocate one page always.
2019-01-26 10:21:58 -06:00
Xiang Xiao
5a37ac25a9
mm/shm/shm_initialize.c: Remove some unused, #ifdef'ed out code.
2019-01-26 10:17:21 -06:00
Xiang Xiao
fb4ab391f6
mm/shm/shmget.c: Should call shm_extend to allocate the physical memory
2019-01-26 10:14:42 -06:00
Xiang Xiao
b5e2754d2d
mm/shm: Convert bytes to pages by MM_NPAGES instead of MM_PGALIGNUP
2019-01-26 10:11:06 -06:00
Xiang Xiao
1ecc33b7db
mm/iob: Miscellaneous changes and fixes from code review.
2019-01-26 09:56:27 -06:00
Xiang Xiao
0354702525
mm/iob/iob_dump.c: Format the whole line before log to avoid the multiple timestamp prefix in each line
2019-01-26 09:44:58 -06:00
Xiang Xiao
ee28417246
mm/iob/iob_notifier.c: Don't check iob_navail in iob_notifier_setup to avoid a potential race condition.
2019-01-26 09:43:54 -06:00
Xiang Xiao
4721381d1c
mm/iob/iob_alloc.c: iob_allocwait should decrease semcount manually.
2019-01-26 09:24:12 -06:00
Xiang Xiao
9cef84b6ad
mm/kmm_heap/kmm_kernel.c: Remove unused, duplicated kmm_heapmember().
2019-01-26 08:48:02 -06:00
Xiang Xiao
e2544b7ddf
mm/umm_heap/umm_sbrk.c: Pass ARCH_HEAP_VEND as maxbreak argument
2019-01-26 07:29:23 -06:00
Xiang Xiao
e15670a191
mm/mm_heap/mm_sbrk.c: Fix backward conditional test. Should call mm_initialize() when brkaddr equal zero
2019-01-26 07:07:42 -06:00
Gregory Nutt
70efabd0ad
mm/mm_heap/mm_calloc.c: Verify that the number of elements times the size of an element will not overflow type size_t. This is required by the SEI CERT C coding style and resolves anonymous Bitbucket Issue #139
2019-01-07 16:13:48 -06:00
Gregory Nutt
40cdc187bb
mm/mm_heap/mm_sem.c and sched/task/task_getpid.c: Commits 43d37c866b
and f37202cbc0
resolved some problems with the original fix of 91aa26774b
. However, Those changes used an internal OS interface (sched_self()) which is not available when the the user-space memory manager is built in the PROTECTED or KERNEL builds and resulted in build failures.
...
This commit repartitions the logic by moving some of the changes from mm_sem.c into task_getpid.c. The logic is equivalent for the case of mm_trysemaphore(), but no has wider impact since it potentially affects all callers of getpid(). Hence, this change may also introduce some other issues that will need to be addressed.
2018-12-30 08:41:06 -06:00
Gregory Nutt
86224f9b7e
Improve some comments.
2018-12-27 09:32:47 -06:00
David Sidrane
43d37c866b
mm/mm_heap/mm_sem.c: Defer freeing if mm is held by a not running task. When the holder is running we can add a holder count. If there is no holder OR it is not running we want to try to take the semaphore. There will not be a count if the task is the holder and not running because it already holds the count. This will result it the deferred free. We will take it when not held and do the free when we can get the count because there was no holder.
2018-12-20 13:39:06 -06:00
Gregory Nutt
f37202cbc0
This is a candidate replacement for the reverted change 91aa26774b
...
This change adds a check to mm_trysemaphore() (the root implementation of both kmm_trysemaphore() and umm_trysemaphore()). It checks if the that task that is apparently executing is marked as RUNNING. If not, how could the non-running task be trying to get the MM semaphore? I think only in the exact scenario that Eunbong Song has described.
So I think the solution should provide the same protection as 91aa26774b
but without the horrific consequences to memory usage.
2018-12-20 10:19:52 -06:00
Petteri Aimonen
fe0532c226
Merged in paimonen/nuttx/pullreq_libc_libnx_updates (pull request #757 )
...
Pullreq libc libnx updates
* NuttX: make strerror() return 'Success' for 0
* NuttX: fix strrchr() so that it considers null terminator as part of string
From strrchr(3) man page:
"The terminating null byte is considered part of the string, so that if c
is specified as '\0', these functions return a pointer to the terminator."
* NuttX: mm_free(): Add DEBUGASSERT()'s to catch memory corruption early.
It's easier to find the source when asserts fail already when freeing
an overflowed buffer, than if the corruption is only detected on next
malloc().
* MM_FILL_ALLOCATIONS: Add debug option to fill all mallocs()
This is helpful for detecting uninitialized variables,
especially in C++ code. I seem to be forgetting to initialize
member variables and then they just get random values..
* NuttX: nxtk_bitmapwindow: Fix warning message when bitmap is fully off-screen.
* nxfonts_getfont: Avoid unnecessary warnings for other whitespace chars also.
* NuttX: Fix kerning of 'I' in Sans17x22 font
The I character was running together with some other
characters, e.g. in sequence "IMI".
* NXMU: Revalidate window pointer for mouse events.
NXMU caches the previous window pointer so that further mouse
events can be sent to the same window. However, if the window
is destroyed while mouse button is held down, the pointer may
become invalid and cause a crash. This patch revalidates the
pointer before using it.
Approved-by: GregoryN <gnutt@nuttx.org>
2018-11-12 15:36:35 +00:00
Gregory Nutt
dec7ecbd56
net/tcp/tcp_recvwindow.c: In order to receive data we must not only have IOBs available, but we must also have at least one IOB chain qentry available. Otherwise, we will advertise that we an buffer a lot of data when, in fact, we cannot. This is an expermental fix to a performance problem noted by Masayuki Ishikawa.
2018-09-22 09:33:29 -06:00
Gregory Nutt
22da175629
mm/iob: Add a divider that can be used to reduce the rate of IOB notifications.
2018-09-13 06:56:29 -06:00
Gregory Nutt
76eec53e4f
mm/iob: iob_navail() was returning the number of free IOB chain queue entries, not the number of free IOBs. Completely misnamed.
2018-09-12 06:40:18 -06:00
Gregory Nutt
11a635dcb3
mm/iob: IOB free notifier should accept the work queue ID as a paramter. The notification may need to run on either the high- or low- priority work queue. sched/work: Change the default priority of the low-priority work queue to 100.
2018-09-11 08:49:39 -06:00
Gregory Nutt
af0ee3c8f7
sched/wqueue: Add an option to work queue notifier so that the notification can occur on different work queues.
2018-09-11 07:22:23 -06:00
Gregory Nutt
39df7ed0c0
mm/iob and sched/semaphore: Work around some issues with the IOB throttle semaphore. It has some odd behaviors that can cause assertions in sem_post(). Also, it seems to get outside of its range occasionally. Need to REVISIT this.
2018-09-10 11:32:09 -06:00
Gregory Nutt
9d3148406c
Signals were not a good choice of IPC to implement the poll function for several reasons: In order to handle the asynchrnous poll-related event, a substantial amount of state information is needed. Signals are only capable of passing minimal amounts of data. There are also complexities with performing kernel space signal handlers in kernel space code that is better to avoid. So, instead of signals, the equivalent logic was converted to run via a callback that executes on the high-priority work queue.
...
Squashed commit of the following:
Fix up some final compile isses.
net/netdev: Convert the network down notification logic to use the new wqueue-based notification factility.
net/udp: Convert the UDP readahead notification logic to use the new wqueue-based notification factility.
net/tcp: Convert the TCP readahead notification logic to use the new wqueue-based notification factility.
mm/iob: Convert the IOB notification logic to use the new wqueue-based notification factility.
sched/wqueue: Signals are not good IPCs to support the target poll functionality for several reasons including the amount of data that can be passed with a signal and in the fact that in protected and kernel modes, user threads executing signal handlers in protected, kernel memory is problematic. Instead, convert the same logic to perform the notifications via function callback on the high priority work queue.
2018-09-09 15:01:44 -06:00
Gregory Nutt
32e3e51678
net/netdev: Add signal notification for the case where the network goes down.
2018-09-09 10:39:25 -06:00
Gregory Nutt
28f73bd928
net/tcp and udp: Add logic to signal events when TCP or UDP read-ahead data is buffered.
...
Squashed commit of the following:
net/tcp: Add signal notification for the case when UDP read-ahead data is buffered. This is basically of clone of the TCP notification logic with naming adapted for UDP.
net/tcp: Add signal notification for the case when TCP read-ahead data is buffered.
2018-09-09 09:21:39 -06:00
Gregory Nutt
fc127fd297
sched/signal: Add a generic signal notification facility. Modify the custom IOB available notifier so that it is now just a wrapper around this generic signal notification. This generic signal notification faility will, eventually, be used to support network polling.
...
Squashed commit of the following:
mm/iob: The IOB available notifier is now just a wrapper around the common signal notifier.
sched/signal: Add a generic signal notification facility.
sched/signal/sig_evthread.c: More trivial naming changes.
sched/signal: Rename nxsig_notification() to nxsig_evthread() to make forthcoming naming additions more consistent.
2018-09-09 08:32:37 -06:00
Gregory Nutt
0eb1beee63
mm/iob: Improve the IOB notifier data structures. Replace the fixed array with a singly linked list. For small value of CONFIG_IOB_NWAITERS, either solution is fine. But the fixed array does not scale well when CONFIG_IOB_NWAITERS is large.
2018-09-08 17:47:43 -06:00
Gregory Nutt
5bd0f596fc
Fix some trivial typos.
2018-09-08 16:53:12 -06:00
Gregory Nutt
bba8541ad6
mm/iob: Add an IOB notifier that will send a signal to any registered threads that want to be notified when an IOB has been freed. This is an untested work-in-progress and is intended to be a part of a larger solution to correctly handling network poll operations.
2018-09-08 11:21:18 -06:00
Xiang Xiao
86eef8ce3a
mm/: add mm_heapmember function and reimplement kmm_heapmember base on mm_heapmember since this function is very useful if multiple heaps exist.
2018-08-23 09:38:49 -06:00
Alan Carvalho de Assis
283b73edc5
Fix lots of typos in C comments and Kconfig help text
2018-07-08 18:24:45 -06:00
Juha Niskanen
044d538da3
Fix some errors found during upstream merge
2018-06-28 07:06:57 -06:00
Gregory Nutt
0786b5d053
net/tcp: Re-think CONFIG_NET_TCP_RWND_CONTROL TCP windowing controls.
2018-06-24 14:46:12 -06:00
Dmitriy Linikov
87c8b116ca
mm/iob/iob_copyin.c: Fixed problem with send() ret value when using nonblocking io over buffered tcp socket
2018-03-20 06:58:57 -06:00
Masayuki Ishikawa
1d958980bd
Merged in masayuki2009/nuttx.nuttx/fix_smp_bugs (pull request #615 )
...
Fix SMP related bugs
* sched/sched: Fix a deadlock in SMP mode
Two months ago, I introduced sched_tasklist_lock() and
sched_tasklist_unlock() to protect tasklists in SMP mode.
Actually, this change works pretty well for HTTP audio
streaming aging test with lc823450-xgevk.
However, I found a deadlock in the scheduler when I tried
similar aging tests with DVFS autonomous mode where CPU
clock speed changed based on cpu load. In this case, call
sequences were as follows;
cpu1: sched_unlock()->sched_mergepending()->sched_addreadytorun()->up_cpu_pause()
cpu0: sched_lock()->sched_mergepending()
To avoid this deadlock, I added sched_tasklist_unlock() when calling
up_cpu_pause() and sched_addreadytorun(). Also, added
sched_tasklist_lock() after the call.
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
* libc: Add critical section in lib_filesem.c for SMP
To set my_pid into fs_folder atomically in SMP mode,
critical section API must be used.
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
* mm: Add critical section in mm_sem.c for SMP
To set my_pid into mm_folder atomically in SMP mode,
critical section API must be used.
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
* net: Add critical section in net_lock.c for SMP
To set my pid (me) into fs_folder atomically in SMP mode,
critical section API must be used.
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
Approved-by: Gregory Nutt <gnutt@nuttx.org>
2018-03-20 12:34:38 +00:00
Gregory Nutt
b54ffe858a
Standardization of some function headers.
2018-03-13 09:52:27 -06:00
Dmitriy Linikov
a8c58607e9
Merged in hardlulz/modem-3.0-nuttx/fix-sem-EINTR (pull request #603 )
...
Added ECANCELED condition to DEBUGASSERT-s checking sem_wait result
Approved-by: Gregory Nutt <gnutt@nuttx.org>
2018-02-20 18:24:53 +00:00
Gregory Nutt
7cf88d7dbd
Make sure that labeling is used consistently in all function headers.
2018-02-01 10:00:02 -06:00
Gregory Nutt
3521aaf944
Squashed commit of the following:
...
binfmt/, configs/, grahics/, libc/, mm/, net/, sched/: OS references to the errno variable should always use the set_errno(), get_errno() macros
arch/arm/src/stm32 and stm32f7: Architecture-specific code is not permitted to modify the errno variable. drivers/ and libc/: OS references to the errno variable should always use the set_errno(), get_errno() macros
2018-01-30 17:57:36 -06:00
Gregory Nutt
fef255e5be
This commit adds an as-of-yet untested implemented of UDP write buffering.
...
Squashed commit of the following:
net/udp: Address most of the issues with UDP write buffering. There is a remaining issue with handling one network going down in a multi-network environment. None of this has been test but it is certainly ready for test. Hence, the feature is marked EXPERIMENTAL.
net/udp: Some baby steps toward a corrected write buffering design.
net/udp: Remove pesky write buffer macros.
Eliminate trailing space at the end of lines.
net/udp: A little more UDP write buffering logic. Still at least on big gaping hole in the design.
net/udp: Undefined CONFIG_NET_SENDTO_TIMEOUT.
net/udp: Crude, naive port of the TCP write buffering logic into UDP. This commit is certainly non-functional and is simply a starting point for the implementatin of UDP write buffering.
net/udp: Rename udp/udp_psock_sendto.c udp/udp_psock_sendto_unbuffered.c.
2018-01-22 18:32:02 -06:00
Gregory Nutt
fb6208fbbc
mm: Fix a typo in a debug assertion.
2017-11-22 07:30:48 -06:00
Gregory Nutt
514ac3fe98
mm: Add a debug assertin to check for integer overflow in malloc.
2017-11-21 07:24:10 -06:00
Gregory Nutt
ef89207c8d
Build system: Fix CONFIG_BUILD_KERNEL logic directories that have ubin and kbin subdirectories. Conditional logic was fine for CONFIG_BUILD_FLAT and CONFIG_BUILD_PROTECTED but generated useless dependencies if CONFIG_BUILD_KERNEL.
2017-11-15 07:54:09 -06:00
Gregory Nutt
fa4722a5ac
mm/mm_gran: Combine some common logic into a function (also fixes a subtle bug).
2017-11-15 07:54:08 -06:00
Gregory Nutt
1191238b17
mm/mm_gran: Fix some issues found during test of the new gran_info() interface.
2017-11-14 16:13:20 -06:00
Gregory Nutt
d720711807
fs/procfs: Add logic to show the state of the page allocator in /proc/meminfo.
2017-11-14 14:59:51 -06:00
Gregory Nutt
54fad8d04f
mm/mm_gran: Add a function to get information about the state of the granuale allocator.
2017-11-14 14:41:03 -06:00
Gregory Nutt
62b8026976
Remove CONFIG_GRAN_SINGLE. It adds no technical benefit (other than some minor reduction in the number of interface arguments) but adds a lot of code complexity. Better without it.
2017-11-14 11:47:12 -06:00
Jussi Kivilinna
75b53d563b
mm/mm-heap: memalign: fix heap corruption caused by using unaligned chuck size. Unaligned nodes generated by memalign later cause heap corruptions when nodes are shrink further (for example, 24 bytes -> 8 bytes, when alignment is 16 bytes).
2017-10-24 15:35:52 -06:00
Gregory Nutt
34a572b226
Update last commit... Check should really use the definition MMSIZE_MAX which is really the same thing, but guaranteed to be the correct maximum size in any present and future configuration.
2017-10-17 07:34:06 -06:00
EunBong Song
196911d4fa
If size is greater than (UINT32_MAX - SIZEOF_MM_ALLOCNODE), malloc size can be overflow by MM_ALIGN_UP macro. For example, if task_create() called with stack_size == -1, up_create_stack() functions allocates SIZEOF_MM_ALLOCNODE bytes for stack.
...
This can cause data abort in up_stack_color() function.
2017-10-17 06:37:09 -06:00
Gregory Nutt
700f1a8e8c
Eliminate some warnings found in build testing.
2017-10-08 16:27:17 -06:00
Gregory Nutt
a857cc04e4
Fix some build problems after recent separation of internal OS from application interfaces. The build problem only occurs in the PROTECTED and KERNEL builds where separate libraries are built for the applications and for use within the OS. In these cases, the correct interfaces must be used. This commit fixes a few of these, so I can get through build testing, but there are many more that need fixin'.
2017-10-08 08:13:47 -06:00
Gregory Nutt
9e25d89223
Squashed commit of the following:
...
Replace all usage kill() in the OS proper with nxsig_kill().
sched/signal: Add nxsig_kill() which is functionally equivalent to kill() except that it does not modify the errno variable.
2017-10-07 08:22:18 -06:00
Gregory Nutt
91537a7722
mm/: Heap semaphore logic needs to use nxsem_* interfaces when available, but the standard semaphores only when implementing a user-space heap. Not this does introduce and issue: the memory management functions them become cancellation points because of the use of sem_wait.
2017-10-07 07:16:33 -06:00
Gregory Nutt
7cc63f90d9
sched/semaphore: sem_trywait() modifies the errno value and, hence, should not be used within the OS. Use nxsem_trywait() instead.
2017-10-05 07:59:06 -06:00
Gregory Nutt
9568600ab1
Squashed commit of the following:
...
This commit backs out most of commit b4747286b1
. That change was added because sem_wait() would sometimes cause cancellation points inappropriated. But with these recent changes, nxsem_wait() is used instead and it is not a cancellation point.
In the OS, all calls to sem_wait() changed to nxsem_wait(). nxsem_wait() does not return errors via errno so each place where nxsem_wait() is now called must not examine the errno variable.
In all OS functions (not libraries), change sem_wait() to nxsem_wait(). This will prevent the OS from creating bogus cancellation points and from modifying the per-task errno variable.
sched/semaphore: Add the function nxsem_wait(). This is a new internal OS interface. It is functionally equivalent to sem_wait() except that (1) it is not a cancellation point, and (2) it does not set the per-thread errno value on return.
2017-10-04 15:22:27 -06:00
Gregory Nutt
42a0796615
Squashed commit of the following:
...
sched/semaphore: Add nxsem_post() which is identical to sem_post() except that it never modifies the errno variable. Changed all references to sem_post in the OS to nxsem_post().
sched/semaphore: Add nxsem_destroy() which is identical to sem_destroy() except that it never modifies the errno variable. Changed all references to sem_destroy() in the OS to nxsem_destroy().
libc/semaphore and sched/semaphore: Add nxsem_getprotocol() and nxsem_setprotocola which are identical to sem_getprotocol() and set_setprotocol() except that they never modifies the errno variable. Changed all references to sem_setprotocol in the OS to nxsem_setprotocol(). sem_getprotocol() was not used in the OS
2017-10-03 15:35:24 -06:00
Gregory Nutt
83cdb0c552
Squashed commit of the following:
...
libc/semaphore: Add nxsem_getvalue() which is identical to sem_getvalue() except that it never modifies the errno variable. Changed all references to sem_getvalue in the OS to nxsem_getvalue().
sched/semaphore: Rename all internal private functions from sem_xyz to nxsem_xyz. The sem_ prefix is (will be) reserved only for the application semaphore interfaces.
libc/semaphore: Add nxsem_init() which is identical to sem_init() except that it never modifies the errno variable. Changed all references to sem_init in the OS to nxsem_init().
sched/semaphore: Rename sem_tickwait() to nxsem_tickwait() so that it is clear this is an internal OS function.
sched/semaphoate: Rename sem_reset() to nxsem_reset() so that it is clear this is an internal OS function.
2017-10-03 12:52:31 -06:00
Jussi Kivilinna
81b5118727
mm_mallinfo: do heap end debug assert check with heap semaphore held
2017-08-03 10:01:26 -06:00
Gregory Nutt
98d937104e
mm/: Remove dangling space at the end of lines.
2017-06-28 13:31:21 -06:00
Gregory Nutt
d9bd5ca05f
Update README and some C comments
2017-05-30 09:19:04 -06:00
Gregory Nutt
e9c55d8f7d
IOBs: Fix a typing error mm/iob/iob.h mm/iob/iob_initialize.c
2017-05-27 08:03:00 -06:00
Gregory Nutt
2c00825dcf
Porting Guide: Add description of IOBs.
2017-05-20 08:50:05 -06:00
Masayuki Ishikawa
f10e10e465
IOBs: Fix build break
...
Signed-off-by: Masayuki Ishikawa <masayuki.ishikawa@gmail.com>
2017-05-18 13:59:03 +09:00
Gregory Nutt
5ce2ece134
syslog: Add header file inclusion to eliminate a warning; mm/iob: private function needs static storage class.
2017-05-16 12:26:23 -06:00
Gregory Nutt
6a3800f611
There can be a failure in IOB allocation to some asynchronous behavior caused by the use of sem_post(). Consider this scenario:
...
Task A holds an IOB. There are no further IOBs. The value of semcount is zero.
Task B calls iob_alloc(). Since there are not IOBs, it calls sem_wait(). The v
alue of semcount is now -1.
Task A frees the IOB. iob_free() adds the IOB to the free list and calls sem_post() this makes Task B ready to run and sets semcount to zero NOT 1. There is one IOB in the free list and semcount is zero. When Task B wakes up it would increment the sem_count back to the correct value.
But an interrupt or another task runs occurs before Task B executes. The interrupt or other tak takes the IOB off of the free list and decrements the semcount. But since semcount is then < 0, this causes the assertion because that is an invalid state in the interrupt handler.
So I think that the root cause is that there the asynchrony between incrementing the semcount. This change separates the list of IOBs: Currently there is only a free list of IOBs. The problem, I believe, is because of asynchronies due sem_post() post cause the semcount and the list content to become out of sync. This change adds a new 'committed' list: When there is a task waiting for an IOB, it will go into the committed list rather than the free list before the semaphore is posted. On the waiting side, when awakened from the semaphore wait, it will expect to find its IOB in the committed list, rather than free list.
In this way, the content of the free list and the value of the semaphore count always remain in sync.
2017-05-16 11:03:35 -06:00
Gregory Nutt
0de294a586
Fix lots of occurrences of 'the the', 'the there', 'the these', 'the then', 'the they.
2017-05-11 13:35:56 -06:00
Gregory Nutt
d3b9f5b37f
Syslog buffering: Use IOBs to buffer data, not an on-stack buffer
2017-05-10 17:36:08 -06:00
Gregory Nutt
de6bffe713
Update some README files
2017-05-09 11:32:44 -06:00
Gregory Nutt
2043e1a114
IOBs: Move from driver/iob to a better location in mm/iob
2017-05-09 07:35:30 -06:00
Gregory Nutt
0064dc52e5
realloc(): When realloc() has to fall back to calling malloc(), size including overhead was being provided to malloc(), causing a slightly larger allocation than needed. Noted by initialkjc@yahoo.com
2017-03-28 07:23:46 -06:00
Gregory Nutt
6f1c5e7b43
Add some comments.
2016-11-05 09:44:29 -06:00
Gregory Nutt
43eb04bb8f
Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info().
2016-06-20 11:59:15 -06:00
Gregory Nutt
0c8c7fecf0
Add _ to the beginning of all debug macros to avoid name collisions
2016-06-16 12:33:32 -06:00
Gregory Nutt
cf4075c741
Missed macro definition in one case
2016-06-12 11:13:34 -06:00
Gregory Nutt
823b4b0cff
Forget to define an info() macro
2016-06-12 11:11:08 -06:00
Gregory Nutt
b29a4dd49c
audio/, crypto/, libnx/, and mm/: Change some err() ERRORS to warn() WARNINGS or info()
2016-06-12 09:46:23 -06:00
Gregory Nutt
a1469a3e95
Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err()
2016-06-11 15:50:49 -06:00
Gregory Nutt
e99301d7c2
Rename *lldbg to *llerr
2016-06-11 14:55:27 -06:00
Gregory Nutt
86b79b33cf
Reserver the name 'err' for other purposes
2016-06-11 14:40:07 -06:00
Gregory Nutt
1cdc746726
Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES
2016-06-11 14:14:08 -06:00
Gregory Nutt
fc3540cffe
Replace all occurrences of vdbg with vinfo
2016-06-11 11:59:51 -06:00
Paul A. Patience
f8f7b7582c
Silence some warnings
2016-05-26 14:06:13 -04:00
Gregory Nutt
c4493528a1
Remove some empty file section section header comments
2016-02-17 18:57:35 -06:00
Gregory Nutt
241ab98c5b
Remove some empty file section section header comments
2016-02-17 18:31:56 -06:00
Gregory Nutt
fccef49305
Cosmetic changes to comments
2016-02-15 13:48:08 -06:00
Gregory Nutt
046e39e2c6
nuttx/mm and libc: Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section()
2016-02-14 08:57:01 -06:00
Gregory Nutt
f45166af32
SMP: Fix a IDLE task semaphore operation
2016-02-12 18:03:08 -06:00
Gregory Nutt
40659d12df
Rename libxx_internal.h to libxx.h
2015-12-30 07:56:56 -06:00
Gregory Nutt
b90da3f27b
waitpid: CRITICAL BUGFIX. Add a reference counting mechansim to prevent wait from using stale memory that was freed by the exiting task
2015-12-22 11:48:17 -06:00
Paul A. Patience
bfc95c641f
stdlib: Fix forgotten FARs
2015-11-18 14:22:43 -05:00
Gregory Nutt
06cd5b2fcc
mm, audio, crypto, graphics: Fix various spacing/alignment issues
2015-10-08 09:10:22 -06:00
Gregory Nutt
af086c40ff
Remove dangling whitespace
2015-10-04 15:28:54 -06:00
Gregory Nutt
0b12dbf95d
Fix some spacing problems
2015-10-04 15:04:00 -06:00
Gregory Nutt
5b51a9fcdd
Standardize the width of all comment boxes in C files
2015-10-02 17:43:18 -06:00
Gregory Nutt
cb9e27c3b0
Standardize naming used for public data and function groupings
2015-10-02 16:30:35 -06:00
Paul A. Patience
9f108b7b63
Fix issues detected by clang
2015-09-10 20:59:43 -04:00
Gregory Nutt
07e9a02af9
Forgot to add two files in previous commit
2015-07-10 08:46:13 -06:00
Gregory Nutt
59cc4a7a7b
Protected mode: Redesign how the user space heap is accessed from the kernel code. It used to call memory management functions in user space via function pointers in the userspace interface. That is inefficient because the first thing that those memory management functions do is to trap back into the kernel to get the current PID. Worse, that operation can be fatal is certain fragile situations such as when a task is exitting.
...
The solution is to remove all of the memory management function calls from the interface. Instead, the interface exports the userspace heap structure and then kernel size implementations of those memory management functions will operate on the userspace heap structure. This avoids the unnecessary system calls and, more importantly, failures do to freeing memory when a test exits.
2015-07-10 08:37:02 -06:00
Gregory Nutt
342f5fe33d
Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation
2015-06-28 08:08:57 -06:00
Gregory Nutt
0476d8168a
More missing semicolons after DEBUGASSERT
2015-05-27 13:32:39 -06:00
Gregory Nutt
2aa80e06f5
Remove executable flag from more .c and .h files
2015-04-09 08:20:57 -06:00
Gregory Nutt
a4a6917267
Fixes some issues found by the PX4 team using Coverity. From Pavel Krienko
2015-01-19 13:01:20 -06:00
Gregory Nutt
9ac09db800
More fixes to problems noted by cppcheck. Some are kind of risky; some are real bugs.
2014-11-25 13:46:14 -06:00
Gregory Nutt
f06289e4d5
If the INTR granule allocator mode is enabled, there is no
...
semaphore to destroy. From Lorenz Meier.
2014-11-12 06:56:32 -06:00
Gregory Nutt
8634a5e41c
Fix a typo in a Kconfig file
2014-09-27 16:11:48 -06:00
Gregory Nutt
b33c2d9cef
Move include/nuttx/mm.h to include/nuttx/mm/mm.h
2014-09-24 07:29:09 -06:00
Gregory Nutt
1863370672
Move include/nuttx/shm.h to include/nuttx/mm/shm.h
2014-09-24 07:05:02 -06:00
Gregory Nutt
2fa7431ee7
Move include/nuttx/gran.h to include/nuttx/mm/gran.h
2014-09-24 06:55:26 -06:00
Gregory Nutt
0f97d81f8d
Completes the implemenation of the core shared memory logic: shmget(), shmctl(), shmat(), and shmdt(). This is still some unfinish platform-specific code that needs to be done before we can begin testing.
2014-09-23 16:07:12 -06:00
Gregory Nutt
d546ebabe4
Remove executable mode
2014-09-23 16:06:22 -06:00
Gregory Nutt
ee0d20d44c
Add interfaces to support un-initializing a granule allocator.
2014-09-23 16:05:32 -06:00
Gregory Nutt
835c91b03a
Add support for a per-process virtual page allocator. This is a new member of the task_group_s structure. The allocaor must be initialized when a new user process is started and uninitialize when the process group is finally destroyed. It is used by shmat() and shmdt() to pick the virtual address onto which to map the shared physical memory.
2014-09-23 16:04:39 -06:00
Gregory Nutt
b542d1733f
Cosmetic
2014-09-23 16:03:52 -06:00
Gregory Nutt
566dc8dd38
Add interfaces to support un-initializing a granule allocator.
2014-09-23 15:50:45 -06:00
Gregory Nutt
115634ff4d
Flesh out shmctl() logic
2014-09-23 11:41:05 -06:00
Gregory Nutt
5efd5738e9
Flesh out basic logic for shmget()
2014-09-23 10:42:18 -06:00
Gregory Nutt
a73a3ef99f
Add shared memory initializatin logic
2014-09-23 08:46:31 -06:00
Gregory Nutt
242d5f2068
Add README files and configuration support for the shared memory logic
2014-09-23 07:11:47 -06:00
Gregory Nutt
18ce64d61e
Add the build framework and skeleton files for the shared memory feature (no logic yet provided)
2014-09-22 14:53:56 -06:00
Gregory Nutt
6bed778738
Again I forget to add a file needed in a previous commit
2014-09-22 10:59:00 -06:00
Gregory Nutt
c5a206666d
Add a home for forthcoming shared memory logic
2014-09-22 10:58:27 -06:00
Gregory Nutt
3464089542
Move core heap allocator logic from mm/. to mm/mm_heap/.
2014-09-22 10:53:50 -06:00
Gregory Nutt
8b8c134efa
Move the user heap allocator front-end from mm/. to mm/umm_heap/.
2014-09-22 10:48:58 -06:00
Gregory Nutt
77bf9d6ae7
Forgot to add a file in the last commit
2014-09-22 10:43:46 -06:00
Gregory Nutt
c3a2527e56
Move the kernel heap allocator front-end from mm/. to mm/kmm_heap/.
2014-09-22 10:42:26 -06:00
Gregory Nutt
907e45752b
Move granuale allocator and page allocator from mm/. to mm/mm_gran/.
2014-09-22 10:33:23 -06:00
Gregory Nutt
5d9276ed71
More changes so that the KNSH build survives the changes needed for the ELF build
2014-09-16 15:55:21 -06:00
Gregory Nutt
925fc9ad81
First round of changes to get the ELF configuration building again
2014-09-16 15:37:05 -06:00
Gregory Nutt
8993910427
Fix a typo in use of a configuration setting
2014-09-13 12:24:08 -06:00
Gregory Nutt
205c23b9d6
Add logic to initialize the per-process user heap when each user process is started
2014-09-10 15:55:36 -06:00
Gregory Nutt
0c8830f9f3
Granule allocator initialization uses wrong allocator to setting aside kernel memory
2014-09-03 13:46:05 -06:00
Gregory Nutt
b05f29dbfe
I love/hate conditional compilation
2014-09-03 11:43:23 -06:00
Gregory Nutt
67d516d9d1
Fix several compile errors for logic added for CONFIG_BUILD_KERNEL, but which cause problems for other configurations
2014-09-03 09:21:59 -06:00
Gregory Nutt
1a4f8914c5
Add support for delivery of use-mode signals in the kernel build.
2014-09-02 15:58:14 -06:00
Gregory Nutt
b4438e44c5
Restructuring of build to allow use of use-space allocators by kernel logic in the kernel build.
2014-09-02 11:22:09 -06:00
Gregory Nutt
b085e084f4
Space at the beginning of the process data space is now reserved for user heap management structures. In the kernel build mode, these heap structures are shared between the kernel and use code in order to allocate user-specific data.
2014-09-02 11:21:23 -06:00
Gregory Nutt
a5af2568eb
sbrk() need to initialized the memory manager on the first call
2014-09-02 08:05:11 -06:00
Gregory Nutt
45c31d633c
Completes the implementation of sbrk() (untested)
2014-09-01 10:46:51 -06:00
Gregory Nutt
f8a8ce4b18
Initial implementatino of sbrk()
2014-09-01 07:37:54 -06:00
Gregory Nutt
205260d5e2
Reanem kzalloc to kmm_zalloc for consistency
2014-08-31 17:34:44 -06:00
Gregory Nutt
1780810d3d
Rename kmalloc to kmm_malloc for consistency
2014-08-31 17:26:36 -06:00
Gregory Nutt
54fa3b0b59
Rename kfree to kmm_free for consistency with other naming conventions
2014-08-31 17:04:02 -06:00
Gregory Nutt
9cd1ddada4
Rename kmemalign to kmm_memalign and krealloc to kmm_realooc for consistency with other naming
2014-08-31 15:27:37 -06:00
Gregory Nutt
5a488475a8
Rename kmemalign to kmm_memalign for consitency with other naming
2014-08-31 14:57:31 -06:00
Gregory Nutt
ecdb5120dd
Add low-level memory management hooks that will be needed to support brk() and sbrk()
2014-08-31 14:42:45 -06:00
Gregory Nutt
b0246d0b7d
mm: Break up mm_user.c and mm_kernel.c into separate files for better symmetry
2014-08-31 11:46:47 -06:00
Gregory Nutt
3c1a70c9dc
Remove CONFIG_MM_MULTIHEAP. Non-multiheap operation is no longer supported
2014-08-31 10:54:55 -06:00
Gregory Nutt
0571a59e12
Need to condition out standard allocators in kernel build. More to be done
2014-08-31 08:10:15 -06:00
Gregory Nutt
e3ff0689bb
Rename CONFIG_NUTTX_KERNEL to CONFIG_BUILD_PROTECTED; Partially integrate new CONFIG_BUILD_KERNEL
2014-08-29 14:47:22 -06:00
Gregory Nutt
00f5e8f70e
Bugfixes.. still integrating SAMA5 ELF with address environment
2014-08-25 15:27:58 -06:00
Gregory Nutt
e1799b0423
Cortex-A/SAMA5 address environment support is code complete (untested)
2014-08-25 11:18:32 -06:00
Gregory Nutt
b028fb31e9
include/nuttx/pgalloc.h and mm/mm_pgalloc.c: Add a simple page allocator based on the existing NuttX granule allocator. I am not certain if the granule allocator is sufficiently deterministic for long range use, but it gets get a page allocator in place for testing very quickly.
2014-08-23 16:37:16 -06:00
Gregory Nutt
7cd8db9425
gran_reserve(): Add a new function to reserve unallocatable regions in the granule heap
2014-08-23 12:43:21 -06:00
Gregory Nutt
6f3cb90c05
Cosmetic changes
2014-05-28 14:09:58 -06:00
Gregory Nutt
56e5bc4268
Costmetic changes to memory manager debug output
2014-05-24 10:40:07 -06:00
Gregory Nutt
2abe0dd6dd
Change all variadic macros to C99 style
2014-05-22 09:01:51 -06:00
Gregory Nutt
3a1324741a
More trailing whilespace removal
2014-04-13 14:32:20 -06:00
Gregory Nutt
e10ab85d1d
More changes to restore the native Windows build
2014-02-07 10:14:11 -06:00
Gregory Nutt
806b01deef
16z: Fix option bits; adjust system clock frequency
2014-01-23 12:06:57 -06:00
Gregory Nutt
9f01df47ea
Create procfs_utils.c; File missed from last commit; + remove warning from mm_memalign.c (how did this work before?)
2013-12-14 08:53:23 -06:00
Gregory Nutt
0c6474cdf0
Fix some kernel-mode compilation problems
2013-12-11 16:49:48 -06:00
Gregory Nutt
78936f7260
Changes for ZDS-II ez80 build
2013-11-28 17:47:03 -06:00
Gregory Nutt
dc4c6bcb57
When creating kernel dependencies, need to define __KERNEL__
2013-09-29 15:03:10 -06:00
Gregory Nutt
c038f4efe0
Dependency generation fix for directories that keep object files in a sub-directory
2013-09-29 11:46:10 -06:00
Gregory Nutt
bc46b447dc
Fix all occurrences of "the the" in documentation and comments
2013-08-27 09:40:19 -06:00
Gregory Nutt
e3a76b2e64
Add kernel/user memalign functions. Not fully integrated
2013-08-20 13:04:49 -06:00
Gregory Nutt
76867c132e
Beginning updates of SAM3U header files o include support for the SAM4S: WDT, SUPC, EEFC, MATRIX, and PMC
2013-06-10 11:57:37 -06:00
Gregory Nutt
19b38fa95f
Add power management register defintions and clock control logic for the SAM4L
2013-06-05 13:35:19 -06:00
Gregory Nutt
4748599a43
.dSYM only needs to be in the same .gitignore files as .exe
2013-05-30 15:02:04 -06:00
Gregory Nutt
7554d2888e
Upate .gitignore files. Add .dSYM. Make sure / is present where needed. Add some missing .gitignore files
2013-05-30 14:45:31 -06:00
Gregory Nutt
f9b9875952
Various Kconfig files still have references to CONFIG_ variables. Some in harmless comments, some in config definionts which is not harmless. All removed
2013-04-25 15:52:00 -06:00
Gregory Nutt
a9f461533e
Need to include debug.h or compile fails when memory management debug is enabled
2013-04-18 11:40:38 -06:00
Gregory Nutt
db78b76102
Mostly updates and corrections to .gitignore files
2013-04-04 15:39:50 -06:00
Gregory Nutt
23db0682b7
Clone svn:ignore directory atributed to .gitignore files
2013-04-04 14:27:29 -06:00
patacongo
6c2fb4405c
Directories where the same source files are used to build different objects need to keep those objects in separate directories; LPC17xx updates from Chris Taglia
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5762 42af7a65-404d-4744-a932-0658087f49c3
2013-03-19 23:40:07 +00:00
patacongo
14298ad8b8
Fixe to kernel build and syscalls.
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5738 42af7a65-404d-4744-a932-0658087f49c3
2013-03-13 17:32:37 +00:00
patacongo
3781d761f3
Fix a bug introduced in the last check-in
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5728 42af7a65-404d-4744-a932-0658087f49c3
2013-03-11 00:04:50 +00:00
patacongo
2433c1461b
Remove user_map.h; replace with a header at the beginning of the user-space blob. User work queue no started by os_brinup() on behalf of the application
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5727 42af7a65-404d-4744-a932-0658087f49c3
2013-03-10 23:42:49 +00:00
patacongo
18ca1965b6
AT91SAM3 now supports kernel-mode heap; SAM3U-EK knsh configuration converted to use kconfig-frontends tool
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5726 42af7a65-404d-4744-a932-0658087f49c3
2013-03-10 19:31:10 +00:00
patacongo
1ef904003e
Create sched_ufree and sched_kfree from sched_free; Use user-accessible heap to allocae stacks
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5725 42af7a65-404d-4744-a932-0658087f49c3
2013-03-10 15:32:33 +00:00
patacongo
1c52dce216
More changes for a kernel-mode allocator (more to be done)
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5724 42af7a65-404d-4744-a932-0658087f49c3
2013-03-09 21:12:20 +00:00
patacongo
feca2c077e
With these fixes, the kernel build is basically functional (but there is more to be done)
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5722 42af7a65-404d-4744-a932-0658087f49c3
2013-03-09 01:27:42 +00:00
patacongo
0db8dc83ee
up_addregion should use kmm_addregion; move garbage kmm*.c file to mm/. for now
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5721 42af7a65-404d-4744-a932-0658087f49c3
2013-03-08 22:01:50 +00:00
patacongo
017e07d35d
Add support for multiple heaps
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5720 42af7a65-404d-4744-a932-0658087f49c3
2013-03-08 20:36:18 +00:00
patacongo
45ce321f51
Move all memory manager globals to a structure. Pass structure pointer as a handler because MM APIs
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5719 42af7a65-404d-4744-a932-0658087f49c3
2013-03-08 18:29:56 +00:00
patacongo
be1b67a1a2
Add debug output when memory allocations fail
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5686 42af7a65-404d-4744-a932-0658087f49c3
2013-02-28 15:31:58 +00:00
patacongo
153984b9c9
Several patches from Petteri Aimonen
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5625 42af7a65-404d-4744-a932-0658087f49c3
2013-02-08 15:28:07 +00:00
patacongo
549429b675
Fix some early z180 compile errors
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5430 42af7a65-404d-4744-a932-0658087f49c3
2012-12-11 22:51:20 +00:00
patacongo
0f218d0e00
Add support for the Z180 MMU and generic hooks for processes
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5428 42af7a65-404d-4744-a932-0658087f49c3
2012-12-11 18:04:04 +00:00
patacongo
469ec154c0
Missing comma in EVERY DELFILE/DELDIR macro call in every Makefile
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5373 42af7a65-404d-4744-a932-0658087f49c3
2012-11-20 15:47:41 +00:00
patacongo
26c9112ad2
Most of the changes needed to support Windows native clean; distclean is has a problem
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5367 42af7a65-404d-4744-a932-0658087f49c3
2012-11-17 18:54:53 +00:00
patacongo
f751d36eee
Move some (hopefully) un-necessary quotes in Makefiles for Mike
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5356 42af7a65-404d-4744-a932-0658087f49c3
2012-11-15 17:43:29 +00:00
patacongo
4aa5fab17f
Changes to get a clean ez80 build using the ZDS 5.1.1 toolchain
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5341 42af7a65-404d-4744-a932-0658087f49c3
2012-11-12 15:22:27 +00:00
patacongo
a5f761c24e
Correct some issues with last check-in; ez80 still does not build
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5339 42af7a65-404d-4744-a932-0658087f49c3
2012-11-11 23:44:31 +00:00
patacongo
a1cf659333
Completes removal bash ARCHIVE loop; Adds basic Makefile for native windows build
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5338 42af7a65-404d-4744-a932-0658087f49c3
2012-11-11 18:36:28 +00:00
patacongo
3d2879fc4e
Partial change: Removing bash ARCHIVE loop
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5335 42af7a65-404d-4744-a932-0658087f49c3
2012-11-11 15:42:12 +00:00
patacongo
7a2692df6a
Resync new repository with old repo r5166
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5154 42af7a65-404d-4744-a932-0658087f49c3
2012-09-17 18:35:37 +00:00
patacongo
a5f05e3e5b
Missed one file in last checking; Gran allocator alignment decoupled from granule size
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5152 42af7a65-404d-4744-a932-0658087f49c3
2012-09-14 18:14:40 +00:00
patacongo
b94212a272
Add mm/README.txt
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5140 42af7a65-404d-4744-a932-0658087f49c3
2012-09-13 00:34:43 +00:00
patacongo
4490cd2acc
Misc fixes and optimizations for the granule allocator
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5136 42af7a65-404d-4744-a932-0658087f49c3
2012-09-12 17:55:03 +00:00
patacongo
53fb00e20e
New file missed in last check-in
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5135 42af7a65-404d-4744-a932-0658087f49c3
2012-09-12 15:21:26 +00:00
patacongo
6474398297
Fix MMC/SD support for Wildfire board; Granule allocator can now be used from intrrupt handler
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5134 42af7a65-404d-4744-a932-0658087f49c3
2012-09-12 15:18:56 +00:00
patacongo
b8cc5c9186
Misc ENC28J60 fixes
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5132 42af7a65-404d-4744-a932-0658087f49c3
2012-09-12 00:12:18 +00:00
patacongo
b75545f120
Fixes for granule allocator
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5131 42af7a65-404d-4744-a932-0658087f49c3
2012-09-11 21:39:39 +00:00
patacongo
26841d617e
Update to granule allocator; Update to ENC28j60 driver
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5130 42af7a65-404d-4744-a932-0658087f49c3
2012-09-11 20:33:58 +00:00
patacongo
a30e2f4a27
Add beginning of a simple granule allocator to support DMA IO buffer allocation
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5129 42af7a65-404d-4744-a932-0658087f49c3
2012-09-11 18:22:27 +00:00
patacongo
d869cc4ef7
STM32 Kconfig looks good. STM32 external ram configuration changed.
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5100 42af7a65-404d-4744-a932-0658087f49c3
2012-09-05 23:02:43 +00:00
patacongo
13d17cacbe
mm/ file clean-up
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4943 42af7a65-404d-4744-a932-0658087f49c3
2012-07-14 23:31:12 +00:00
patacongo
cb4999caa8
Fix a bad interrupt state in the PIC32 IDLE loop when the work queue is enabled
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4805 42af7a65-404d-4744-a932-0658087f49c3
2012-06-06 01:44:57 +00:00
patacongo
41f3401979
Fix CDC/ACM alternate interface number (from Antti)
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4589 42af7a65-404d-4744-a932-0658087f49c3
2012-04-11 14:47:25 +00:00
patacongo
330b89ca0e
Add kconfig documentation
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4567 42af7a65-404d-4744-a932-0658087f49c3
2012-04-06 16:45:52 +00:00
patacongo
4b8c0c41c8
Adding skeleton Kconfig files (part 1 of 2)
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4564 42af7a65-404d-4744-a932-0658087f49c3
2012-04-06 15:49:35 +00:00
patacongo
58a68260c3
Fix an error that caused interrupts to become disabled
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3724 42af7a65-404d-4744-a932-0658087f49c3
2011-06-18 20:02:40 +00:00
patacongo
a542f92647
Fix AVR clock setup; add SPI driver
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3721 42af7a65-404d-4744-a932-0658087f49c3
2011-06-17 22:03:20 +00:00
patacongo
a201aecd89
Add strndup()
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3649 42af7a65-404d-4744-a932-0658087f49c3
2011-05-29 16:07:13 +00:00
patacongo
ae8cfb1bf1
atexit() functions now called when task killed by task delete; For MCUs with <= 64Kb of SRAM, CONFIG_MM_SMALL can be defined to reduce the memory allocation overhead
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3648 42af7a65-404d-4744-a932-0658087f49c3
2011-05-28 21:42:18 +00:00
patacongo
bae9dce323
Move memory manager into user space
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3460 42af7a65-404d-4744-a932-0658087f49c3
2011-04-03 20:41:49 +00:00
patacongo
e97118d258
Port the mm/mm_test.c logic to examples/mm
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3330 42af7a65-404d-4744-a932-0658087f49c3
2011-03-02 18:47:32 +00:00
patacongo
fb15f94d5e
Fix warning introduced with last checkin
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3262 42af7a65-404d-4744-a932-0658087f49c3
2011-01-19 20:18:31 +00:00
patacongo
60c0de010a
Fix issues detected by CppCheck tool
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3261 42af7a65-404d-4744-a932-0658087f49c3
2011-01-19 20:02:23 +00:00
patacongo
2f0e15334b
Switching to C99 stdint/stdbool.h types
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2342 42af7a65-404d-4744-a932-0658087f49c3
2009-12-15 01:39:03 +00:00
patacongo
e72dce9e1b
Consolidate buffer dumping; fix all occurrences of 'the the'
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1951 42af7a65-404d-4744-a932-0658087f49c3
2009-06-25 17:44:35 +00:00
patacongo
bf19cece2d
Fix heap setup problem
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1793 42af7a65-404d-4744-a932-0658087f49c3
2009-05-19 15:17:28 +00:00
patacongo
c0f9c73868
ez80f910200zco port
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1436 42af7a65-404d-4744-a932-0658087f49c3
2008-12-08 18:44:43 +00:00
patacongo
392f59af18
Typo in comments
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1221 42af7a65-404d-4744-a932-0658087f49c3
2008-11-13 14:46:47 +00:00
patacongo
360cc0a648
typos
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@799 42af7a65-404d-4744-a932-0658087f49c3
2008-08-02 17:22:22 +00:00
patacongo
291270beb5
Using tool-specific clean
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@545 42af7a65-404d-4744-a932-0658087f49c3
2008-01-10 18:23:08 +00:00
patacongo
e881da738c
Compiles with ZDS-II
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@540 42af7a65-404d-4744-a932-0658087f49c3
2008-01-09 22:53:52 +00:00
patacongo
83f36eac7d
Changes for ZNeo compile
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@539 42af7a65-404d-4744-a932-0658087f49c3
2008-01-09 14:20:31 +00:00
patacongo
d8b91b19e5
Make logic reorganized for non-GNU toolchain
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@528 42af7a65-404d-4744-a932-0658087f49c3
2008-01-08 17:06:21 +00:00
patacongo
131931c877
Reduce make output
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@526 42af7a65-404d-4744-a932-0658087f49c3
2008-01-08 13:41:00 +00:00
patacongo
71f2d3d25d
ZNeo compiler now works
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@525 42af7a65-404d-4744-a932-0658087f49c3
2008-01-08 13:02:47 +00:00
patacongo
c5a589f25b
Add support for tools that can't make dependencies
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@522 42af7a65-404d-4744-a932-0658087f49c3
2008-01-08 00:19:24 +00:00
patacongo
772ad744e0
Integrating z80
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@463 42af7a65-404d-4744-a932-0658087f49c3
2007-12-30 18:13:22 +00:00
patacongo
b72a7ab50b
Debug can now be selectively enabled by subystem
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@404 42af7a65-404d-4744-a932-0658087f49c3
2007-11-23 22:32:52 +00:00
patacongo
01207cc66e
Added network init; refactored some header files
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@338 42af7a65-404d-4744-a932-0658087f49c3
2007-09-09 11:58:50 +00:00
patacongo
14c19aa3d1
Fixed several more realloc errors
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@296 42af7a65-404d-4744-a932-0658087f49c3
2007-06-30 22:24:19 +00:00
patacongo
3237757a86
Fix error in realloc when memory is extended downward
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@295 42af7a65-404d-4744-a932-0658087f49c3
2007-06-30 20:38:16 +00:00
patacongo
08199e1216
Add 8052 IRQ test; Fix places where IDLE task could try to wait on semaphores
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@61 42af7a65-404d-4744-a932-0658087f49c3
2007-03-14 18:58:21 +00:00
patacongo
b4fd3cdcf4
task_create now accepts variable number of arguments; 8051 bringup changes
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@56 42af7a65-404d-4744-a932-0658087f49c3
2007-03-11 17:37:47 +00:00