dongjiuzhu1
4438681a51
mm/umm_heap: move memory-related api from libc/stdlib to umm
...
N/A
Change-Id: I4cf7f2586c8b476336e7d32e518b2c774e6ce746
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-03-03 22:24:49 +08:00
ligd
49389e2695
mm/net/sched: fix warnings
...
Change-Id: I92db0e2cb7ff9e63eef8086a7cc084f67045d69c
Signed-off-by: ligd <liguiding1@xiaomi.com>
2021-03-03 19:26:43 +08:00
mage1
15fc1cb23f
mm: add kconfig option to control the memory manger strategy choice.
...
since will will porvide more the one strategy in future.
Change-Id: I73b900c6571f9b71b8239dd72006bdd0a68ee64d
2021-03-03 15:04:27 +08:00
mage1
465f98384b
mm: Move mm_heap_s related stuff to private header file
...
since it will improve the modularity and reduce the inforamtion explosion
Change-Id: I085b36adb38993a979625a1f4c252d364a15afa1
2021-03-02 22:21:46 +08:00
chao.an
800421e231
net/tcp: cache the drop packet to avoid retransmit
...
Change-Id: Ia27ed17a7708df8481ac96d9a3a870b6ccef4d24
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-03-02 10:12:56 +08:00
chao.an
9c946e2af6
make/archive: replace the dependency to preprequisite list
...
Change-Id: Id63f3cd32906461a54cb016ef8078d4d922845e2
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-03-01 21:10:15 +08:00
chao.an
3a658ee32c
mm/circbuf: fix compile warning
...
circbuf/circbuf.c:133:14: warning: 'len' may be used uninitialized in this function [-Wmaybe-uninitialized]
133 | circ->head = len;
| ~~~~~~~~~~~^~~~~
circbuf/circbuf.c:106:10: note: 'len' was declared here
106 | size_t len;
| ^~~
Change-Id: I60e42b88e98838f5654d84b70f109a4df5a7ff26
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-03-01 16:14:25 +08:00
ligd
43742ca827
debug tools: add heap & stack check in idle thread
...
N/A
Change-Id: Iba6f5cdffb1336697096c71fca86c9ece584225f
Signed-off-by: ligd <liguiding1@xiaomi.com>
2021-03-01 10:41:09 +08:00
chao.an
87de0294a0
mm/iob: add iob_free_queue() interface
...
Change-Id: Ic06d9725e6b7ff4aac554f735d4c88bdec519d18
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-02-26 21:58:25 +08:00
chao.an
af341ee4fc
mm/iob: rename the iob_free_queue() to iob_destroy_queue()
...
make the semantics more precise
Change-Id: Ie3ac87d6a478cdd65e9129e708afc833f0a124b0
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-02-26 20:38:44 +08:00
ligd
a25ad34d82
Revert "mm/umm_heap: move memory-related api from libc/stdlib to umm"
...
This reverts commit 187b6c0742 .
2021-02-26 10:20:08 +08:00
Jiuzhu Dong
187b6c0742
mm/umm_heap: move memory-related api from libc/stdlib to umm
...
N/A
Change-Id: Ie10393fc8630016dbca27f3c327431fad3b375fb
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-02-25 16:54:05 +08:00
chao.an
6f39a980f5
mm/iob: add iob_get_queue_count() helper
...
Change-Id: I73cc9bc9c51b25c828cefef917df12d202ffa414
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-02-08 09:50:32 +08:00
dongjiuzhu
0027842652
mm/circbuf: fix the problem of dividing by zero.
...
N/A
Change-Id: I78a5cae0f782bc2c09848ebda9589dc53809e089
Signed-off-by: dongjiuzhu <dongjiuzhu1@xiaomi.com>
2020-12-01 09:49:55 +08:00
Matias N
2860069883
build system: add missing --obj-path to MKDEP
2020-11-30 11:20:15 +08:00
chao.an
90dc86655c
style/Makefile: remove unnecessary trailing whitespace
...
N/A
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-11-30 11:20:05 +08:00
Matias N
d5b6ec450f
Parallelize depend file generation
2020-11-22 09:02:59 -03:00
YAMAMOTO Takashi
8da52c82b4
mm/mm_heap/mm_malloc.c: Fix syslog format errors
2020-11-20 22:22:53 -08:00
YAMAMOTO Takashi
7f61256b32
mm/mm_heap/mm_initialize.c: Fix syslog format errors
2020-11-20 22:22:53 -08:00
dongjiuzhu
23ddeaf3be
mm/circbuf: support circular buffer managerment
...
N/A
Change-Id: Ib1fc009b9ce3af5815920f22221fe8a7262299ef
Signed-off-by: dongjiuzhu <dongjiuzhu1@xiaomi.com>
2020-11-20 05:33:03 -08:00
Matias N
166242c171
use "export" to expose TOPDIR to all child make instead of passing it around every time
2020-09-15 21:11:33 -07:00
ligd
6b7dd62bad
mm/mm_heap/mm_initialize.c: add sem lock to mm_addregion()
...
Change-Id: I4a72e36fcd4504c0d8e671fe2243b14764db3b35
2020-09-15 08:50:01 +09:00
Xiang Xiao
3ea8d574fe
mm: Implement malloc_usable_size
...
defined here:
https://man7.org/linux/man-pages/man3/malloc_usable_size.3.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I5988bb28375626188312bd0a0ba3fc12db66f644
2020-08-24 03:36:44 -07:00
SPRESENSE
e249a2f82f
Makefile: Fix Make.dep not updated by config changes
...
Make.dep file should be updated by .config changed after first make.
There are 2 cases affected for this problem:
1) Add source files by config symbol
2) Include header files in #ifdef directive
These 2 cases may not be included in Make.dep and this may prevent the
differential build from working correctly.
2020-07-28 03:59:45 -05:00
Brennan Ashton
e87617f9fa
nxstyle: fixup style issues in mm_realloc.c
...
Signed-off-by: Brennan Ashton <bashton@brennanashton.com>
2020-06-29 14:56:26 -07:00
Brennan Ashton
fcd6e1c7eb
mm: Do not memcopy more than oldsize when realloc
...
When realloc up from a mem area to a larger one where a new node
is needed. The the larger memory region is copied from the source
this can both leak data as well as cause memory faults accesssing
invalid data.
This was first reported by Kwonsk
Signed-off-by: Brennan Ashton <bashton@brennanashton.com>
2020-06-29 14:56:26 -07:00
YAMAMOTO Takashi
875828b698
Add a missing stdlib.h -> malloc.h change for mallinfo
2020-06-15 09:06:28 -06:00
YAMAMOTO Takashi
a607e6257f
Include malloc.h instead of stdlib.h for mallinfo()
...
This change also removes the malloc.h inclusion in stdlib.h
to break the build if there are still users of mallinfo() with stdlib.h.
2020-06-15 07:21:19 -06:00
Xiang Xiao
7e5b0f81e9
build: Replace -I with INCDIR
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-24 20:20:12 +01:00
Xiang Xiao
23668a4b9b
build: Remove the empty variable assignment
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-24 08:24:13 -06:00
Xiang Xiao
dd61d3d9f9
build: Remve the unnecessary .gitignore
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-23 18:00:40 +01:00
Xiang Xiao
1a95cce1a3
build: Move .config check to the top Makefile
...
remove the workaround to handle the inexistence of .config/Make.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-20 17:57:34 +01:00
Xiang Xiao
5eae32577e
build: Move INCDIROPT to common place
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-18 15:02:55 -06:00
Gregory Nutt
a569006fd8
sched/: Make more naming consistent
...
Rename various functions per the quidelines of https://cwiki.apache.org/confluence/display/NUTTX/Naming+of+OS+Internal+Functions
nxsem_setprotocol -> nxsem_set_protocol
nxsem_getprotocol -> nxsem_get_protocol
nxsem_getvalue -> nxsem_get_value
2020-05-17 14:01:00 -03:00
Gregory Nutt
4b44b628ea
Run nxstyle against all .c and .h files modified by this PR.
...
All complaints fixed except for those that were not possible to fix:
- Used of Mixed case identifier in ESP32 files. These are references to Expressif ROM functions which are outside of the scope of NuttX.
2020-05-09 14:19:08 -03:00
Gregory Nutt
a4218e2144
include/nuttx/sched.h: Make naming of all internal names consistent:
...
1. Add internal scheduler functions should begin with nxsched_, not sched_
2. Follow the consistent naming patter of https://cwiki.apache.org/confluence/display/NUTTX/Naming+of+OS+Internal+Functions
2020-05-09 14:19:08 -03:00
Xiang Xiao
d9d2fc0d0a
debug: Reduce CONFIG_CPP_HAVE_VARARGS usage
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-05 08:27:58 -06:00
Xiang Xiao
a2f657e4cb
build: Move KDEFINE to a common place(tools/Config.mk)
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-01 15:56:55 -06:00
Xiang Xiao
f2aba8d9b7
build: Remove 'u' prefix from userspace library
...
so user needn't link the different library because the build type change
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-01 15:56:55 -06:00
Xiang Xiao
f8a809eb5b
Fix nxstyle issue
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-01 10:43:47 -03:00
Xiang Xiao
eca7059785
Refine __KERNEL__ and CONFIG_BUILD_xxx usage in the code base
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-01 10:43:47 -03:00
Xiang Xiao
ddda00ea65
Kconfig: Refine BUILD_FLAT, BUILD_PROTECTED and BUILD_KERNEL usage
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-04-29 12:16:18 -06:00
Gregory Nutt
fd38623aac
mm/iob/iob_clone.c: Correct newline character
...
Another place where /n is used where \n was intended.
2020-04-29 18:11:00 +01:00
Masayuki Ishikawa
ad9db974cb
mm: Fix heap corruption in protected build
...
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-04-22 13:45:56 +08:00
Masayuki Ishikawa
12ff2212f5
mm: mm_heap: Fix deadlock in mm_trysemaphore in SMP mode
...
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-04-13 12:06:07 +08:00
Gregory Nutt
67ec3d7926
Remove CONFIG_CAN_PASS_STRUCT
...
This commit resolves issue #620 :
Remove CONFIG_CAN_PASS_STRUCTS #620
The configuration option CONFIG_CAN_PASS_STRUCTS was added many years ago to support an old version of the SDCC compiler. That compiler is currently used only with the Z80 and Z180 targets. The limitation of that old compiler was that it could not pass structures or unions as either inputs or outputs. For example:
#ifdef CONFIG_CAN_PASS_STRUCTS
struct mallinfo mallinfo(void);
#else
int mallinfo(FAR struct mallinfo *info);
#endif
And even leads to violation of a few POSIX interfaces like:
#ifdef CONFIG_CAN_PASS_STRUCTS
int sigqueue(int pid, int signo, union sigval value);
#else
int sigqueue(int pid, int signo, FAR void *sival_ptr);
#endif
This breaks the 1st INVIOLABLES rule:
Strict POSIX compliance
-----------------------
o Strict conformance to the portable standard OS interface as defined at
OpenGroup.org.
o A deeply embedded system requires some special support. Special
support must be minimized.
o The portable interface must never be compromised only for the sake of
expediency.
o Expediency or even improved performance are not justifications for
violation of the strict POSIX interface
Also, it appears that the current SDCC compilers have resolve this issue and so, perhaps, this is no longer a problem: z88dk/z88dk#1132
NOTE: This commit cannot pass the PR checks because it depends on matching changes to the apps/ directory.
2020-04-11 21:19:47 +01:00
liuhaitao
459ad99373
Use EXTRAFLAGS instead of EXTRADEFINES to be used by make via command line
...
So call 'make EXTRAFLAGS=-Wno-cpp' could suppress the warnings with pre-processor
directive #warning in GCC.
Change-Id: Iaa618238924c9969bf91db22117b39e6d2fc9bb6
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-04-11 08:31:08 -06:00
ligd
ef360394c7
mm/mm_heap: fix mm_heap not support BUILD_FLAT
...
1. change ifdef __KERNEL__ to:
if defined(CONFIG_BUILD_FLAT) || defined(__KERNEL__)
2. change mm_delaylist to *mm_delaylist
3. change FAR struct mm_delaynode_s *new to:
FAR struct mm_delaynode_s *tmp
4. should check mm_trysemaphore() return values
Change-Id: I57ba991f13c3eaf56dc2d71ac946c11669e32dfa
Signed-off-by: ligd <liguiding@fishsemi.com>
2020-04-10 07:49:32 -06:00
ligd
cbf31bca5c
global change: fix tools/checkpatch.sh warnnings
...
Change-Id: I88cfa979c44bcaf3a8f6e036c6bfccd3402ca85a
Signed-off-by: ligd <liguiding@fishsemi.com>
2020-04-09 10:29:28 -06:00
ligd
1d2396353e
mm/mm_heap: add mm_delaylist to mm_heap_s struct
...
Change-Id: I2ffaec5557bf2dd2021baa6cda84bb5318425caa
Signed-off-by: ligd <liguiding@fishsemi.com>
2020-04-09 10:29:28 -06:00