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
patacongo
a0dffbf481
Fix c5471 signal handling + deallocation bug
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@44 42af7a65-404d-4744-a932-0658087f49c3
2007-03-08 18:34:11 +00:00
patacongo
4b1edc8ea5
Add capability to manager memory in discontiguous regions.
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@35 42af7a65-404d-4744-a932-0658087f49c3
2007-03-04 15:23:22 +00:00
patacongo
a60059d9d0
Finally, a clean SDCC compile
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@20 42af7a65-404d-4744-a932-0658087f49c3
2007-02-27 21:17:21 +00:00
patacongo
b8f3bd857b
Progress toward clean SDCC compilation
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@18 42af7a65-404d-4744-a932-0658087f49c3
2007-02-21 21:55:16 +00:00
patacongo
4881fed8bf
Working toward compiler independence: Removed inline funcs
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@15 42af7a65-404d-4744-a932-0658087f49c3
2007-02-20 23:16:24 +00:00
patacongo
3c0e634aee
Eliminating GCC dependencies
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@14 42af7a65-404d-4744-a932-0658087f49c3
2007-02-20 22:39:56 +00:00
patacongo
c42c9f4aef
Fix problems in state restore logic
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5 42af7a65-404d-4744-a932-0658087f49c3
2007-02-18 15:28:23 +00:00
patacongo
b08a86171f
NuttX RTOS
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3 42af7a65-404d-4744-a932-0658087f49c3
2007-02-17 23:21:28 +00:00