There are three bug in fifo testcase.
1. line 211 and line 295 should be nbytes not ret.
2. coverity report error:
CID 1667262: (#4 of 11): Double close (USE_AFTER_FREE)
11. double_close: Calling close(int) will close the handle fd that has already been closed. [Note: The source code implementation of this function has been overwritten by the built-in model.]
Double close will ocurr when line 234 is true and goto line 341, close again!
Now, Using the previous code logic, Use a tid and an errout_with_null_thread to avoid uninitialized problems.
3. since line 295 is used ret not nbytes, error not expose before.
When the end of read and write are opened, end of write will write successfully even if end of read not read.
Signed-off-by: wangzhi16 <wangzhi16@xiaomi.com>
libuv:
CC: pthread/pthread_mutexattr_setrobust.c libuv/src/unix/thread.c: In function ‘uv_thread_create_ex’:
libuv/src/unix/thread.c:174:24: error: storage size of ‘param’ isn’t known
174 | struct sched_param param;
| ^~~~~
btsak_main:
In file included from btsak_main.c:39:
btsak.h:149:1: error: unknown type name ‘bool’
149 | bool btsak_str2bool(FAR const char *str);
pipe_main.c:
CC: sim/sim_registerdump.c pipe_main.c:44:30: error: unknown type name ‘pthread_addr_t’
44 | static void *open_write_only(pthread_addr_t pvarg)
| ^~~~~~~~~~~~~~
pipe_main.c: In function ‘pipe_main’:
pipe_main.c:81:3: error: unknown type name ‘pthread_t’
81 | pthread_t writeonly;
redirect_test.c: In function ‘redirection_test’:
redirect_test.c:205:3: error: unknown type name ‘pthread_t’
205 | pthread_t readerid;
| ^~~~~~~~~
redirect_test.c:206:3: error: unknown type name ‘pthread_t’
206 | pthread_t writerid;
| ^~~~~~~~~
drivertest_posix_timer.c:48:29: error: ‘optarg’ undeclared (first use in this function)
48 | value = (type)strtoul(optarg, &ptr, base); \
drivertest_posix_timer.c:208:3: warning: implicit declaration of function ‘sleep’ [-Wimplicit-function-declaration]
208 | sleep(SLEEPSECONDS);
| ^~~~~
drivertest_uart.c:92:13: warning: implicit declaration of function ‘read’; did you mean ‘fread’? [-Wimplicit-function-declaration]
92 | len = read(fd, &tmp_char, 1);
| ^~~~
| fread
drivertest_uart.c:323:44: error: ‘optopt’ undeclared (first use in this function)
323 | printf("Unknown option: %c\n", optopt);
kernel/fs/cases/fs_getfilep_test.c:71:9: warning: implicit declaration of function ‘fs_getfilep’ [-Wimplicit-function-declaration]
71 | ret = fs_getfilep(fileno(fp), &filep);
| ^~~~~~~~~~~
kernel/mm/cases/mm_test_008.c:148:9: warning: implicit declaration of function ‘task_create’; did you mean ‘timer_create’? [-Wimplicit-function-declaration]
148 | pid = task_create("TestNuttx08_routine_1",
| ^~~~~~~~~~~
| timer_create
/home/ajh/work/nuttxwork/apps/testing/cmocka/cmocka_main.c:171:11: warning: implicit declaration of function ‘setenv’ [-Wimplicit-function-declaration]
171 | setenv("CMOCKA_XML_FILE", xml_path, 1);
| ^~~~~~
drivertest_pm_runtime.c:123:7: warning: implicit declaration of function ‘usleep’ [-Wimplicit-function-declaration]
123 | usleep(210 * 1000);
| ^~~~~~
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
write returns in case some bytes were written but not everything can
fit.
This wasn't the case in NuttX but commit
d0680fd1bc51b7ead0b068fb24a31a144d22dc6c introduced this standard
behavior.
Summary:
Added a limit to CJSON_NESTING_LIMIT. The default value is 1000, which can cause stack overflow in some test cases.
Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
in file included from /home/work/ssd1/workspace/mirtos-ci/nuttx/../apps/frameworks/quickapp/src/framework/cdp/cdpprotocol.h:12,
from /home/work/ssd1/workspace/mirtos-ci/nuttx/../apps/frameworks/quickapp/src/framework/cdp/heapprofiler.h:3,
from /home/work/ssd1/workspace/MiRTOS-CI/apps/frameworks/quickapp/src/jse/quickjs/jse_quickjs.cpp:11:
/home/work/ssd1/workspace/MiRTOS-CI/nuttx/../apps/frameworks/quickapp/src/aiotjs.h:10:10: fatal error: app_interface.h: No such file or directory
10 | #include "app_interface.h"
| ^~~~~~~~~~~~~~~~~
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
When initialized for the first time, the memset parameter is smaller than the actual buffer size
Causes subsequent accesses to uninitialized memory in the array
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
This configuration is added to put LVGL into PSRAM for execution, and the lv_*.o file needs to be matched in the link script. Since LTO optimization will cause the file name to be modified, resulting in a matching failure, it will only take effect if LTO optimization is removed during compilation.
Link script modification: https://gerrit.odm.mioffice.cn/c/velaos/vendor/bes/framework/services_1502x/+/680741
Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com>
Aider is AI pair programmer: https://aider.chat
The .aider* files is not a part of NuttX but used by
Aider as temporary files.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
This patch add some command line arguments for debug
program, then you can use it to insert watchpoint or
breakpoint to arbitrary address at runtime.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
Sensors are just a part of uORB, and there are many virtual topics used
within uORB as well. For the library apps/system/uorb/, the nuttx/uorb.h
version is more preferable. So, move public type and definition to
nuttx/uorb.h.
Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
This enhances can example application with the possibility to send
CAN FD frames if FD mode is configured. Both EDL and BRS flags are
now correctly set with the latter one configurable with application's
arguments. Also data bytes are now correctly switched to DLC.
Signed-off-by: Michal Lenc <michallenc@seznam.cz>