Ville Juven
da319bbd85
riscv/addrenv: Move addrenv_switch() to correct place after FPU change
...
The new address environment must be instantiated prior to restoring FPU
state as the CPU status register is in tcb->regs, which is user stack.
2023-06-19 19:28:07 +08:00
Ville Juven
5ce169f047
sched/assert: Store table for all registers instead of buffer
...
This way the registers can be read easily
2023-06-19 19:28:07 +08:00
Ville Juven
669196910c
riscv/saveusercontext: Fix FPU state save
2023-06-19 19:28:07 +08:00
Ville Juven
35c27b5a9a
riscv/fpu: Restore correct lazy-FPU functionality
...
- Save the FPU registers into the tcb so they don't get lost if the stack
frame for xcp.regs moves (as it does)
- Handle interger and FPU register save/load separately
- Integer registers are saved/loaded always, like before
- FPU registers are only saved during a context switch:
- Save ONLY if FPU is dirty
- Restore always if FPU has been used (not in FSTATE_OFF, FSTATE_INIT)
- Remove all lazy-FPU related logic from the macros, it is not needed
2023-06-19 19:28:07 +08:00
Ville Juven
040eb3c990
riscv/swint: Give the full tcb to the context switch routine
...
Why? The tcb can contain info that is needed by the context switch
routine. One example is lazy-FPU handling; the integer registers can
be stored into the stack, because they are always stored & restored.
Lazy-FPU however needs a non-volatile location to store the FPU registers
as the save feature will skip saving a clean FPU, but the restore must
always restore the FPU registers if the thread uses FPU.
2023-06-19 19:28:07 +08:00
Eero Nurkkala
4494e75e87
risc-v/mpfs: add CoreMMC support
...
This adds support for the CoreMMC v3.1 FPGA driver as described
in Microchip Handbook HB0510. The driver doesn't support DMA.
Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2023-06-19 19:24:51 +08:00
tjwu1217
f141a6480c
sched/sched/sched_idletask: fix typo
2023-06-19 10:51:23 +02:00
Xiang Xiao
a8e0a5faa4
sched: Remove the unnecessary cast from pid_t to int
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-19 11:37:34 +03:00
Xiang Xiao
07b0cd1cba
mm: Simplify memdump_handler logic a little bit
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-19 11:37:34 +03:00
Xiang Xiao
590e968c5f
mm/tlfs: Count the backtrace overhead in mm_mallinfo_task
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-19 11:37:34 +03:00
Xiang Xiao
313f79d55e
mm/mempool: Count the expend block overhead in mempool_info
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-19 11:37:34 +03:00
Xiang Xiao
0572bc4d03
mm/mempool: Count the backtrace overhead in mempool_[dump|info[_task]]
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-19 11:37:34 +03:00
YAMAMOTO Takashi
e9738cd906
esp32-devkitc/wamr_wasi_debug: Bump WAMR version
2023-06-19 07:20:47 +03:00
Alan Carvalho de Assis
bb84b08735
esp32s3-meadow: Add NSH terminal over USB Device (not USB-JTAG-Serial)
2023-06-19 11:02:08 +08:00
Alan Carvalho de Assis
82bc515ede
esp32s3-eye: Add NSH terminal over USB Device (not USB-JTAG-Serial)
2023-06-19 11:02:08 +08:00
Alan Carvalho de Assis
985e2beae0
esp32s3-devkit: Add NSH terminal over USB Device (not USB-JTAG-Serial)
2023-06-19 11:02:08 +08:00
wangbowen6
b3fead9d28
openamp: add OPENAMP_DEBUG config to enable/disable openamp debug
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-18 16:17:44 +03:00
wangbowen6
fa94317447
openamp/Kconfig: add config to enable/disable the cache feature
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-18 16:17:44 +03:00
Xiang Xiao
9b6cd96671
mm: Rename PID_MM_INVALID to PID_MM_LEAK
...
to express the intent more clear
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-18 14:26:07 +03:00
Xiang Xiao
b00237ac01
mm: Move PID_MM_MEMPOOL after PID_MM_ALLOC
...
so the allocation from mempool could be dumped correctly
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-18 09:12:14 +03:00
Xiang Xiao
f01deff80f
mm: Rename MM_BACKTRACE_XXX_PID to PID_MM_XXX
...
and move the definition to malloc.h
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-18 09:12:14 +03:00
Xiang Xiao
ddbe9eb6ab
mm: Rename mm_memdump_s to malltask
...
align with the naming of mallinfo_task
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-18 09:12:14 +03:00
Xiang Xiao
c76f9f9349
mm/heap: Count mm_heap_s overhead in mm_mallinfo
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-17 19:11:07 -03:00
Xiang Xiao
1d5ca4e809
mm/mempool: Avoid the allocation number of expend block equals zero
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-17 19:11:07 -03:00
Richard Tucker
225d347306
stm32 tickless: stop assertion when calling up_timer_gettime before initialised
...
up_timer_gettime can be called before module is initialised when
CONFIG_SCHED_IRQMONITOR is enabled.
This fix aligns with stm32f7 implementation.
2023-06-17 11:05:40 -03:00
Bowen Wang
69756f277e
rptun_dump: do not acquire the lock when has hold the lock
...
Otherwise, system will crash again when call rptun_dump_all()
after has acquired the lock.
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2023-06-17 19:38:39 +08:00
wangbowen6
41e399aa43
rptun: init the semtx before the thread/workqueue created
...
If the rptun driver set auto start, the smetx may has been used
in rptun_notify_wait() but not inited.
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-17 19:38:39 +08:00
wangbowen6
372fba70bb
mm_heap: dump and stat the mm_heapend node also
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-17 19:37:14 +08:00
wangbowen6
4b8db6f22c
taks_exithook: fix the build error when enable CONFIG_SCHED_DUMP_LEAK
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-17 19:37:14 +08:00
wangbowen6
940bbfc720
rpmsg: support the fdsan feature for rpmsg dev/mtd/blk
...
Directly return -ENOTTY in rpmsgxxx_ioctl() when the command is
not supported to avoid fdsan command FIOC_SETTAG and FIOC_GETTAG
pass to the rpmsg dev/mtd/blk server with CONFIG_FDSAN enabled.
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-17 19:34:39 +08:00
Bowen Wang
8515294caa
lib_syslograwstream: fix bug when iob alloc failed
...
Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
2023-06-17 19:33:41 +08:00
wangbowen6
7117d3ea8a
fs_fsync: should not call fs's ioctl when fs not support sync api
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-17 19:31:17 +08:00
wangbowen6
279667a8f5
fs_romfs: avoid the romfs ERROR log when enable FDSAN
...
Error log:
[ 0.003400] [remote] romfs_ioctl: ERROR: Invalid cmd: 783
[ 0.003400] [remote] romfs_ioctl: ERROR: Invalid cmd: 782
[ 0.003500] [remote] romfs_ioctl: ERROR: Invalid cmd: 783
[ 0.003600] [remote] romfs_ioctl: ERROR: Invalid cmd: 782
[ 0.042900] [remote] romfs_ioctl: ERROR: Invalid cmd: 783
[ 0.043100] [remote] romfs_ioctl: ERROR: Invalid cmd: 782
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2023-06-17 19:31:17 +08:00
zhangyuan21
514e77b75e
semaphore: Optimize priority inheritance with only one holder
...
This PR is a modification that optimizes priority inheritance
for only one holder. After the above modifications are completed,
the mutex lock->unlock process that supports priority inheritance
can be optimized by 200 cycles.
Before modify: 2000 cycle
After modify: 1742 cycle
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2023-06-17 08:26:46 +03:00
Dong Heng
8f25329260
xtensa/esp32s3: SPI support quad I/O mode
2023-06-16 16:07:05 -03:00
Lucas Saavedra Vaz
fa5db655cd
boards/xtensa/esp32s3-devkit: Revert NSH defconfig deletion
...
Restore the NSH defconfig
2023-06-16 14:35:18 -03:00
Xiang Xiao
14e5bcaf6e
fs/fdcheck: Let FDCHECK depend on SCHED_HAVE_PARENT
...
since the implementation of fdcheck call getppid
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-16 18:08:05 +03:00
Xiang Xiao
275db394bc
boards/sim: Enable fdcheck and fdsan in kasan config
...
to improve the ci build coverage
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-16 08:31:16 +03:00
Xiang Xiao
c49bf046bd
libc/fdcheck: Fix undefined reference to `getppid'
...
and change get[p]pid to _SCHED_GET[P]PID
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-16 08:31:16 +03:00
Tiago Medicci Serrano
17c65d2067
risc-v/espressif: use the unquoted CHIP_SERIES
variable
...
Instead of using `CONFIG_ESPRESSIF_CHIP_SERIES`, use the unquoted
version `CHIP_SERIES`.
2023-06-16 11:14:36 +08:00
Tiago Medicci Serrano
368b6cb489
esp32s3/wifi: update Wi-Fi driver to the newest esp-hal-3rdparty
2023-06-16 11:14:36 +08:00
Tiago Medicci Serrano
6559ac4034
risc-v/espressif: update to the newest esp-hal-3rdparty version
...
Also, get esp-hal-3rdparty by git cloning (instead of downloaded)
to enable getting its git submodules.
2023-06-16 11:14:36 +08:00
zhanghongyu
7b5af12158
statfs: add f_fsid field for third-party code compile
...
because NuttX doesn't have the device number, so we're not assigning a
valid value here. just memset to zero.
Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
2023-06-16 11:10:25 +08:00
zhanghongyu
b723e90356
fs: move memset to upper lever for statfs
...
if struct statfs add new members, such as f_fsid, no additional code
changes are required.
Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
2023-06-16 11:10:25 +08:00
Zhe Weng
f80539b6a8
netdev/upper: Use atomic when we have atomic support from compiler
...
Ref: How to test atomic support https://beej.us/guide/bgc/html/split/chapter-atomics.html
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2023-06-15 19:31:59 -03:00
Zhe Weng
483eb10f37
netdev/upper: Make quota_load public
...
Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2023-06-15 19:31:59 -03:00
zhangyuan21
6ede91c5e7
sched/group: Ensure that the setting of tg_members if safe in SMP
...
Fixed ltp_stress_mqueues_multi_send_rev_1 test issue:
In SMP mode, tg_members will operate on different cores.
Adding interrupt locking operations ensures that the operation
of tg_members will not be interrupted by other cores.
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2023-06-15 22:24:00 +08:00
Simon Filgis
04f8bab063
Dynamic adjustment of the orientation, switch orientation on the fly:
...
1. orientation is a parameter of initialize
2. y and x offset need to be adjusted with the orientaiton
3. bpp must be changed no matter what
2023-06-15 10:15:11 -03:00
zhangyuan21
fc9f87824c
sched/pthread: Return ESRCH when the task is in the process of exit.
...
Resolving the issue with the ltp_interfaces_pthread_join_6_2 test case.
In SMP mode, the pthread may still be in the process of exiting when
pthread_join returns, and calling pthread_join again at this time will
result in an error. The error code returned should be ESRCH.
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2023-06-15 10:12:25 -03:00
zhangyuan21
c71007323e
fs/vfs: Proper use of sigisemptyset
...
Use sigandset function instead of & operation,
because the sigset_t structure has been changed.
This PR is to adapt to the changes made in #8885 .
Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com>
2023-06-15 10:11:36 -03:00