Oopenvela-robotsim/umm: Fix the problem that lasan cannot detect
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
sim/usrsock: add TCP socket option support in host usrsock Add TCP-level socket option mapping (TCP_NODELAY, TCP_KEEPIDLE, TCP_KEEPINTVL, TCP_KEEPCNT, TCP_MAXSEG, TCP_CORK) to the sim host usrsock implementation. Signed-off-by: yangjianqing <yangjianqing@xiaomi.com> | 2 个月前 | |
fs/hostfs: add link, symlink, readlink and lstat support Implemented link(), symlink(), readlink() and lstat() in hostfs. Signed-off-by: zhengyu16 <zhengyu16@xiaomi.com> | 2 个月前 | |
rpmsg: Remove rpmsg_lite transport support will be replaced by rptun lite Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com> | 2 个月前 | |
input: change wd timer to precoss input device event Signed-off-by: yezhonghui <yezhonghui@xiaomi.com> | 2 个月前 | |
sim_alsa: move host_open and host_hw_params before getbufferinfo bufferinfo may update in host alsa set_period_size_near and set_periods_near interface Signed-off-by: fangyibo <fangyibo@xiaomi.com> | 2 个月前 | |
arch/armv7-ar: flush dcache when addr is not aligned with cache line When invalidate address is not aligned with cache line, must align address and flush the cache line. Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com> | 2 个月前 | |
arch: rename arch special function name neededby:880149 Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com> | 2 个月前 | |
sim_camera: support enum pixel format. Signed-off-by: yaojingwei <yaojingwei@xiaomi.com> | 2 个月前 | |
debug patch: replace all sim wdog to wqueue asan internal error, we don't know root cause; revert this patch if problem resolved __kernel_vsyscall () /lib/i386-linux-gnu/libc.so.6: ?? /lib/i386-linux-gnu/libc.so.6: raise /lib/i386-linux-gnu/libc.so.6: abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp:143 __sanitizer::Abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:58 __sanitizer::Die ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:87 __sanitizer::CheckFailed ../../../../../src/libsanitizer/asan/asan_allocator.cpp:210 __asan::QuarantineCallback::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:193 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::DoRecycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:181 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:121 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Drain ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:112 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Put ../../../../../src/libsanitizer/asan/asan_allocator.cpp:702 __asan::Allocator::Deallocate ../../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:53 __interceptor_free sim/posix/sim_hostmemory.c:172 host_free sim/sim_ummheap.c:263 forcefree sim/sim_ummheap.c:310 free_delaylist sim/sim_ummheap.c:326 reallocate sim/sim_ummheap.c:453 malloc binder/Parcel.cpp:2586 android::Parcel::continueWrite binder/Parcel.cpp:2379 android::Parcel::growData binder/Parcel.cpp:1629 android::Parcel::writeAligned<int> binder/Parcel.cpp:1055 android::Parcel::writeInt32 binder/Status.cpp:195 android::binder::Status::writeToParcel binder/aidl/android/os/IServiceManager.cpp:665 android::os::BnServiceManager::onTransact binder/Binder.cpp:297 android::BBinder::transact binder/IPCThreadState.cpp:1314 android::IPCThreadState::executeCommand binder/IPCThreadState.cpp:540 android::IPCThreadState::getAndExecuteCommand binder/IPCThreadState.cpp:674 android::IPCThreadState::handlePolledCommands main.cpp:59 BinderCallback::handleEvent Looper.cpp:363 android::Looper::pollInner Looper.cpp:213 android::Looper::pollOnce Looper.cpp:382 android::Looper::pollAll Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
debug patch: replace all sim wdog to wqueue asan internal error, we don't know root cause; revert this patch if problem resolved __kernel_vsyscall () /lib/i386-linux-gnu/libc.so.6: ?? /lib/i386-linux-gnu/libc.so.6: raise /lib/i386-linux-gnu/libc.so.6: abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp:143 __sanitizer::Abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:58 __sanitizer::Die ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:87 __sanitizer::CheckFailed ../../../../../src/libsanitizer/asan/asan_allocator.cpp:210 __asan::QuarantineCallback::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:193 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::DoRecycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:181 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:121 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Drain ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:112 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Put ../../../../../src/libsanitizer/asan/asan_allocator.cpp:702 __asan::Allocator::Deallocate ../../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:53 __interceptor_free sim/posix/sim_hostmemory.c:172 host_free sim/sim_ummheap.c:263 forcefree sim/sim_ummheap.c:310 free_delaylist sim/sim_ummheap.c:326 reallocate sim/sim_ummheap.c:453 malloc binder/Parcel.cpp:2586 android::Parcel::continueWrite binder/Parcel.cpp:2379 android::Parcel::growData binder/Parcel.cpp:1629 android::Parcel::writeAligned<int> binder/Parcel.cpp:1055 android::Parcel::writeInt32 binder/Status.cpp:195 android::binder::Status::writeToParcel binder/aidl/android/os/IServiceManager.cpp:665 android::os::BnServiceManager::onTransact binder/Binder.cpp:297 android::BBinder::transact binder/IPCThreadState.cpp:1314 android::IPCThreadState::executeCommand binder/IPCThreadState.cpp:540 android::IPCThreadState::getAndExecuteCommand binder/IPCThreadState.cpp:674 android::IPCThreadState::handlePolledCommands main.cpp:59 BinderCallback::handleEvent Looper.cpp:363 android::Looper::pollInner Looper.cpp:213 android::Looper::pollOnce Looper.cpp:382 android::Looper::pollAll Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
sim: add assertions on hostfs copy of structures hostfs has its copies of some of nuttx definitions with different names to avoid conflicting with the host OS definitions. sometimes people only modifies one of them and forgets updating another. eg. https://github.com/apache/nuttx/pull/11445 this commit introduces some assertions to detect that kind of mistakes. | 2 个月前 | |
nuttx: optimize up_check_tcbstack() Signed-off-by: guoshengyuan1 <guoshengyuan1@xiaomi.com> | 2 个月前 | |
sim: change the type of xcpt_reg_t Signed-off-by: chenxiaoyi <chenxiaoyi@xiaomi.com> | 2 个月前 | |
arch: rename arch special function name neededby:880149 Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com> | 2 个月前 | |
dns: fix dns failed when ipv4/6 dual stack enable The ipv6 address filled the cache, and the ipv4 address did not have a place to store it, causing the resolution to fail. so if IPV6 has already filled the buffer, rewrite ipv4 DNS results from half of the buffer. Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com> | 2 个月前 | |
nuttx/atomic: replace atomic_fetch_xxx with atomic_xxx just like zephyr Signed-off-by: zhangyu117 <zhangyu117@xiaomi.com> | 2 个月前 | |
v4l2_m2m: Add vaddr field to v4l2-buffer to interact with driver's real address Signed-off-by: niyinghao <niyinghao@xiaomi.com> | 2 个月前 | |
mm/alloc: remove all unnecessary cast for alloc Fix the minor style issue and remove unnecessary cast Signed-off-by: chao an <anchao@xiaomi.com> | 2 个月前 | |
sim: fix compile failed ../../nuttx/arch/sim/src/sim/sim_doirq.c:74:11: error: ‘tcb’ undeclared (first use in this function) Signed-off-by: ligd <liguiding1@xiaomi.com> | 2 个月前 | |
v4l2_m2m: Add vaddr field to v4l2-buffer to interact with driver's real address Signed-off-by: niyinghao <niyinghao@xiaomi.com> | 2 个月前 | |
sched: unify the thread exit running task behavior. We already split switch_context into nxsched_suspend_scheduler and nxsched_resume_scheduler, when task_exit, set running = NULL for more compatible. The switch context is much more frequency than task_exit, we should prefer decrease the switch_context record time cost. Also the x_doirq xcp.regs save will be more unified. Signed-off-by: wangzhi16 <wangzhi16@xiaomi.com> Signed-off-by: ligd <liguiding1@xiaomi.com> | 2 个月前 | |
kasan: Support asan poison memory The instrumentation is retained, and the sim asan global variables, stack and other checks can still be used Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com> | 2 个月前 | |
libs/libc/fork: add lib_fork implementation 1. add lib_fork api in libs/libc, we need a fork() api to implement the fork relative method, such as pthread_atfork 2. rename the assembly fork entry function name to up_fork(), and rename the up_fork() to arch specific name, such as sim_fork()/arm_fork()/mips_fork() etc. Signed-off-by: guoshichao <guoshichao@xiaomi.com> | 2 个月前 | |
dns: fix dns failed when ipv4/6 dual stack enable The ipv6 address filled the cache, and the ipv4 address did not have a place to store it, causing the resolution to fail. so if IPV6 has already filled the buffer, rewrite ipv4 DNS results from half of the buffer. Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com> | 2 个月前 | |
dns: fix dns failed when ipv4/6 dual stack enable The ipv6 address filled the cache, and the ipv4 address did not have a place to store it, causing the resolution to fail. so if IPV6 has already filled the buffer, rewrite ipv4 DNS results from half of the buffer. Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com> | 2 个月前 | |
dns: fix dns failed when ipv4/6 dual stack enable The ipv6 address filled the cache, and the ipv4 address did not have a place to store it, causing the resolution to fail. so if IPV6 has already filled the buffer, rewrite ipv4 DNS results from half of the buffer. Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com> | 2 个月前 | |
lcd/fb: sim used wd timer to process loop event Signed-off-by: yezhonghui <yezhonghui@xiaomi.com> | 2 个月前 | |
debug patch: replace all sim wdog to wqueue asan internal error, we don't know root cause; revert this patch if problem resolved __kernel_vsyscall () /lib/i386-linux-gnu/libc.so.6: ?? /lib/i386-linux-gnu/libc.so.6: raise /lib/i386-linux-gnu/libc.so.6: abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp:143 __sanitizer::Abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:58 __sanitizer::Die ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:87 __sanitizer::CheckFailed ../../../../../src/libsanitizer/asan/asan_allocator.cpp:210 __asan::QuarantineCallback::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:193 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::DoRecycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:181 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:121 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Drain ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:112 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Put ../../../../../src/libsanitizer/asan/asan_allocator.cpp:702 __asan::Allocator::Deallocate ../../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:53 __interceptor_free sim/posix/sim_hostmemory.c:172 host_free sim/sim_ummheap.c:263 forcefree sim/sim_ummheap.c:310 free_delaylist sim/sim_ummheap.c:326 reallocate sim/sim_ummheap.c:453 malloc binder/Parcel.cpp:2586 android::Parcel::continueWrite binder/Parcel.cpp:2379 android::Parcel::growData binder/Parcel.cpp:1629 android::Parcel::writeAligned<int> binder/Parcel.cpp:1055 android::Parcel::writeInt32 binder/Status.cpp:195 android::binder::Status::writeToParcel binder/aidl/android/os/IServiceManager.cpp:665 android::os::BnServiceManager::onTransact binder/Binder.cpp:297 android::BBinder::transact binder/IPCThreadState.cpp:1314 android::IPCThreadState::executeCommand binder/IPCThreadState.cpp:540 android::IPCThreadState::getAndExecuteCommand binder/IPCThreadState.cpp:674 android::IPCThreadState::handlePolledCommands main.cpp:59 BinderCallback::handleEvent Looper.cpp:363 android::Looper::pollInner Looper.cpp:213 android::Looper::pollOnce Looper.cpp:382 android::Looper::pollAll Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
debug patch: replace all sim wdog to wqueue asan internal error, we don't know root cause; revert this patch if problem resolved __kernel_vsyscall () /lib/i386-linux-gnu/libc.so.6: ?? /lib/i386-linux-gnu/libc.so.6: raise /lib/i386-linux-gnu/libc.so.6: abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp:143 __sanitizer::Abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:58 __sanitizer::Die ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:87 __sanitizer::CheckFailed ../../../../../src/libsanitizer/asan/asan_allocator.cpp:210 __asan::QuarantineCallback::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:193 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::DoRecycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:181 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:121 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Drain ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:112 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Put ../../../../../src/libsanitizer/asan/asan_allocator.cpp:702 __asan::Allocator::Deallocate ../../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:53 __interceptor_free sim/posix/sim_hostmemory.c:172 host_free sim/sim_ummheap.c:263 forcefree sim/sim_ummheap.c:310 free_delaylist sim/sim_ummheap.c:326 reallocate sim/sim_ummheap.c:453 malloc binder/Parcel.cpp:2586 android::Parcel::continueWrite binder/Parcel.cpp:2379 android::Parcel::growData binder/Parcel.cpp:1629 android::Parcel::writeAligned<int> binder/Parcel.cpp:1055 android::Parcel::writeInt32 binder/Status.cpp:195 android::binder::Status::writeToParcel binder/aidl/android/os/IServiceManager.cpp:665 android::os::BnServiceManager::onTransact binder/Binder.cpp:297 android::BBinder::transact binder/IPCThreadState.cpp:1314 android::IPCThreadState::executeCommand binder/IPCThreadState.cpp:540 android::IPCThreadState::getAndExecuteCommand binder/IPCThreadState.cpp:674 android::IPCThreadState::handlePolledCommands main.cpp:59 BinderCallback::handleEvent Looper.cpp:363 android::Looper::pollInner Looper.cpp:213 android::Looper::pollOnce Looper.cpp:382 android::Looper::pollAll Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
Revert "arch/sim: suppress libasan checks" This reverts commit c387ed0ddb1ed2a8cd71035255bd72d56f0d133c. Reason for revert: Test if the issue still present Signed-off-by: xuxingliang <xuxingliang@xiaomi.com> | 2 个月前 | |
nuttx/sim_alsa: Add snd_mixer type defines Signed-off-by: yangyalei <yangyalei@xiaomi.com> Signed-off-by: fangyibo <fangyibo@xiaomi.com> | 2 个月前 | |
sim: rename sim host head file with prefix host Signed-off-by: yezhonghui <yezhonghui@xiaomi.com> | 2 个月前 | |
sim: rename sim host head file with prefix host Signed-off-by: yezhonghui <yezhonghui@xiaomi.com> | 2 个月前 | |
arch/sim: Change sim_host_ prefix to host_ to align with the other similar function style Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com> | 2 个月前 | |
sim/i2c: sim i2c contain linuxi2c and sim_i2c part Signed-off-by: yezhonghui <yezhonghui@xiaomi.com> | 2 个月前 | |
sim_spi: support spi_registercallback worker is needed to process the aysnc transfer process, which can not be found by sim_linuxspi.c. and use sim_spi.c do the common thing, and sim_linuxspi.c do the specific linux thing. which might be easier to adapt to the windows platform. Signed-off-by: liaoao <liaoao@xiaomi.com> | 2 个月前 | |
sim: rename sim host head file with prefix host Signed-off-by: yezhonghui <yezhonghui@xiaomi.com> | 2 个月前 | |
arch/sim: Optimize sim usbhost isoc endpoint transmission The USB driver framework only implements a single ISOC transfer. If multiple transfers are needed, the class driver can initiate multiple urbs to meet the real-time requirements of the ISOC endpoint. The class driver's urb record the buf address, length, and number of packets sent. The callback function calculates the data location in the buf based on the callback number and length returned. Signed-off-by: yangsong8 <yangsong8@xiaomi.com> | 2 个月前 | |
sim/usrsock: add TCP socket option support in host usrsock Add TCP-level socket option mapping (TCP_NODELAY, TCP_KEEPIDLE, TCP_KEEPINTVL, TCP_KEEPCNT, TCP_MAXSEG, TCP_CORK) to the sim host usrsock implementation. Signed-off-by: yangjianqing <yangjianqing@xiaomi.com> | 2 个月前 | |
sim/video: rename dq_buf to dqbuf Signed-off-by: Peter Bee <bijunda1@xiaomi.com> | 2 个月前 | |
fix compile error. sim/sim_i2c.c:120:10: warning: implicit declaration of function 'kmm_zalloc'; did you mean 'lib_zalloc'? [-Wimplicit-function-declaration] 120 | priv = kmm_zalloc(sizeof(*priv)); | ^~~~~~~~~~ | lib_zalloc sim/sim_i2c.c:120:8: warning: assignment to 'struct sim_i2cbus_master_s *' from 'int' makes pointer from integer without a cast [-Wint-conversion] 120 | priv = kmm_zalloc(sizeof(*priv)); | ^ sim/sim_i2c.c:132:7: warning: implicit declaration of function 'kmm_free' [-Wimplicit-function-declaration] 132 | kmm_free(priv); | ^~~~~~~~ Signed-off-by: wangzhi16 <wangzhi16@xiaomi.com> | 2 个月前 | |
sim: update critical_section to spinlock Reduce the abuse of critical_section For sim_oneshot.c, when this function chain, sim_timer_update_internal/enter_critical_section/sim_process_tick/callback possible clk enter_critical_section again, need rspinlock Signed-off-by: buxiasen <buxiasen@xiaomi.com> | 2 个月前 | |
arch/sim: merge X11 event and update work into single work item X11 (libX11/libxcb) is not thread-safe. In NuttX sim, all tasks run as coroutines on the same host thread. Although XInitThreads() is called, X11's internal mutex is ineffective since coroutine switches happen within the same host thread. Previously sim_x11event_work and sim_x11update_work were two separate work items. Between their executions, NuttX could schedule other tasks. If another task's work also triggers X11 operations, or if the two X11 work items interleave with other heap-allocating tasks, X11 internal state (connection buffers, reply queues) could be corrupted, leading to heap corruption detected by ASan as: CHECK failed: asan_allocator.cpp:210 ((old_chunk_state)) == ((CHUNK_QUARANTINE)) (0x0, 0x3) The corrupted chunks' alloc/free stacks consistently show: sim_x11update_work -> sim_x11loop -> sim_x11update -> XSync -> _XReply Merge the two work items into a single sim_x11_work that handles both event processing and framebuffer update within one irq_save_nopreempt section, ensuring no coroutine switch can occur between X11 calls. Signed-off-by: ligd <liguiding1@xiaomi.com> Signed-off-by: buxiasen <buxiasen@xiaomi.com> | 2 个月前 | |
sim: fix ASan crash during signal handling by conditional fiber switch When SIGALRM interrupts code (e.g., during free()), sim_doirq calls sim_fullcontextrestore which previously always called ASan's __sanitizer_start_switch_fiber, even when returning to the SAME task. This corrupts ASan's internal quarantine state, causing crashes like: CHECK_EQ(old_chunk_state, CHUNK_QUARANTINE) with v1=0, v2=3 This patch: 1. Extracts __sanitizer_start_switch_fiber from sim_fullcontextrestore macro into separate sim_asan_start_switch(tcb) macro 2. Adds sim_asan_finish_switch() macro for symmetry 3. In sim_doirq: only calls fiber switch API when actually switching to a DIFFERENT task (switch_ctx == true), not when returning to the same interrupted task 4. Updates sim_switchcontext.c, sim_exit.c, sim_initialstate.c to use the new macros explicitly Signed-off-by: ligd <liguiding1@xiaomi.com> | 2 个月前 | |
sim: fix ASan crash during signal handling by conditional fiber switch When SIGALRM interrupts code (e.g., during free()), sim_doirq calls sim_fullcontextrestore which previously always called ASan's __sanitizer_start_switch_fiber, even when returning to the SAME task. This corrupts ASan's internal quarantine state, causing crashes like: CHECK_EQ(old_chunk_state, CHUNK_QUARANTINE) with v1=0, v2=3 This patch: 1. Extracts __sanitizer_start_switch_fiber from sim_fullcontextrestore macro into separate sim_asan_start_switch(tcb) macro 2. Adds sim_asan_finish_switch() macro for symmetry 3. In sim_doirq: only calls fiber switch API when actually switching to a DIFFERENT task (switch_ctx == true), not when returning to the same interrupted task 4. Updates sim_switchcontext.c, sim_exit.c, sim_initialstate.c to use the new macros explicitly Signed-off-by: ligd <liguiding1@xiaomi.com> | 2 个月前 | |
arch: rename arch special function name neededby:880149 Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com> | 2 个月前 | |
lcd/fb: sim used wd timer to process loop event Signed-off-by: yezhonghui <yezhonghui@xiaomi.com> | 2 个月前 | |
sim: add global work queue to replace HPWORK sensor work in hpwork are waiting for remote buffer, remote get buffer and callback to notify ap, but callback also in hpwork, deadlock occurs here. now we move callback to new global work queue instead of hpwork to fix deadlock. Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
sim_offload: add MONO channel encode method and set samplerate before encode. According to different pcm data format, set real sample rate and encode separately. Signed-off-by: wurui3 <wurui3@xiaomi.com> | 2 个月前 | |
sim_offload: move out of the posix directory The libmad and libmp3lame libraries have been ported to apps/audioutils and will be compiled with NuttX. Signed-off-by: shizhenghui <shizhenghui@xiaomi.com> | 2 个月前 | |
sim: fix oneshot driver to work with both signal and sleep Signed-off-by: chenxiaoyi <chenxiaoyi@xiaomi.com> Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com> | 2 个月前 | |
Merge branch 'master' into vela apache/nuttx commit id: eb27ebba8adfe29644a7b890f86e6f16941921dc Signed-off-by: ligd <liguiding1@xiaomi.com> Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com> | 2 个月前 | |
sched: use this_task replace nxsched_self Signed-off-by: hujun5 <hujun5@xiaomi.com> | 2 个月前 | |
arch: up_getusrsp change to inline and implement in irq.h Signed-off-by: buxiasen <buxiasen@xiaomi.com> | 2 个月前 | |
nuttx/atomic: replace atomic_fetch_xxx with atomic_xxx just like zephyr Signed-off-by: zhangyu117 <zhangyu117@xiaomi.com> | 2 个月前 | |
drivers/sim_rptun: remove rptun stop command Signed-off-by: wangshaoxin <wangshaoxin@xiaomi.com> | 2 个月前 | |
arch/sim: Change sim_host_ prefix to host_ to align with the other similar function style Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com> | 2 个月前 | |
sim: remove sim_saveusercontext() return value Signed-off-by: ligd <liguiding1@xiaomi.com> | 2 个月前 | |
Revert "Reduce the size of tcb by four bytes." This reverts commit 893c5e92c28aca338b38a3d85bd232f9a25a5b56. Signed-off-by: wangzhi16 <wangzhi16@xiaomi.com> | 2 个月前 | |
arch/sim: dataheap should disable exec permission Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com> | 2 个月前 | |
sched: Shorten the scope of critical section protection Signed-off-by: hujun5 <hujun5@xiaomi.com> | 2 个月前 | |
Merge branch 'master' into vela apache/nuttx commit id: eb27ebba8adfe29644a7b890f86e6f16941921dc Signed-off-by: ligd <liguiding1@xiaomi.com> Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com> | 2 个月前 | |
sim: keep host operation in work uninterrupted Signed-off-by: xuxingliang <xuxingliang@xiaomi.com> | 2 个月前 | |
arch: Make STACK_ALIGNMENT consistent with TLS_STACK_ALIGNMENT when CONFIG_TLS_ALIGNED=y Signed-off-by: hujun5 <hujun5@xiaomi.com> | 2 个月前 | |
sim: fix ASan crash during signal handling by conditional fiber switch When SIGALRM interrupts code (e.g., during free()), sim_doirq calls sim_fullcontextrestore which previously always called ASan's __sanitizer_start_switch_fiber, even when returning to the SAME task. This corrupts ASan's internal quarantine state, causing crashes like: CHECK_EQ(old_chunk_state, CHUNK_QUARANTINE) with v1=0, v2=3 This patch: 1. Extracts __sanitizer_start_switch_fiber from sim_fullcontextrestore macro into separate sim_asan_start_switch(tcb) macro 2. Adds sim_asan_finish_switch() macro for symmetry 3. In sim_doirq: only calls fiber switch API when actually switching to a DIFFERENT task (switch_ctx == true), not when returning to the same interrupted task 4. Updates sim_switchcontext.c, sim_exit.c, sim_initialstate.c to use the new macros explicitly Signed-off-by: ligd <liguiding1@xiaomi.com> | 2 个月前 | |
reginfo: add coredump register offset The reginfo struct is used for both coredump and gdbstub. GDB stub needs information of the register value offset in g/G packet. Coredump needs information of register offset in register field. They are not in same order for some of the architecture, thus we add goffset and coffset in reginfo to describe it. Signed-off-by: xuxingliang <xuxingliang@xiaomi.com> | 2 个月前 | |
arch: rename arch special function name neededby:880149 Signed-off-by: zhangyuan21 <zhangyuan21@xiaomi.com> | 2 个月前 | |
debug patch: replace all sim wdog to wqueue asan internal error, we don't know root cause; revert this patch if problem resolved __kernel_vsyscall () /lib/i386-linux-gnu/libc.so.6: ?? /lib/i386-linux-gnu/libc.so.6: raise /lib/i386-linux-gnu/libc.so.6: abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp:143 __sanitizer::Abort ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:58 __sanitizer::Die ../../../../../src/libsanitizer/sanitizer_common/sanitizer_termination.cpp:87 __sanitizer::CheckFailed ../../../../../src/libsanitizer/asan/asan_allocator.cpp:210 __asan::QuarantineCallback::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:193 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::DoRecycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:181 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Recycle ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:121 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Drain ../../../../../src/libsanitizer/sanitizer_common/sanitizer_quarantine.h:112 __sanitizer::Quarantine<__asan::QuarantineCallback, __asan::AsanChunk>::Put ../../../../../src/libsanitizer/asan/asan_allocator.cpp:702 __asan::Allocator::Deallocate ../../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:53 __interceptor_free sim/posix/sim_hostmemory.c:172 host_free sim/sim_ummheap.c:263 forcefree sim/sim_ummheap.c:310 free_delaylist sim/sim_ummheap.c:326 reallocate sim/sim_ummheap.c:453 malloc binder/Parcel.cpp:2586 android::Parcel::continueWrite binder/Parcel.cpp:2379 android::Parcel::growData binder/Parcel.cpp:1629 android::Parcel::writeAligned<int> binder/Parcel.cpp:1055 android::Parcel::writeInt32 binder/Status.cpp:195 android::binder::Status::writeToParcel binder/aidl/android/os/IServiceManager.cpp:665 android::os::BnServiceManager::onTransact binder/Binder.cpp:297 android::BBinder::transact binder/IPCThreadState.cpp:1314 android::IPCThreadState::executeCommand binder/IPCThreadState.cpp:540 android::IPCThreadState::getAndExecuteCommand binder/IPCThreadState.cpp:674 android::IPCThreadState::handlePolledCommands main.cpp:59 BinderCallback::handleEvent Looper.cpp:363 android::Looper::pollInner Looper.cpp:213 android::Looper::pollOnce Looper.cpp:382 android::Looper::pollAll Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
sim/umm: Fix the problem that lasan cannot detect Independent implementation of sim umm list, flip the high 5 bits of the address, so that the memory address will not be recorded in the global variable, otherwise Lasan cannot detect the leak Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com> | 2 个月前 | |
sim: add global work queue to replace HPWORK sensor work in hpwork are waiting for remote buffer, remote get buffer and callback to notify ap, but callback also in hpwork, deadlock occurs here. now we move callback to new global work queue instead of hpwork to fix deadlock. Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
fix the compile error ../arch/sim/src/sim/sim_usbhost.c: In function 'sim_usbhost_epalloc': ../arch/sim/src/sim/sim_usbhost.c:413:47: error: 'USB_EP_MAXP_MASK' undeclared (first use in this function); did you mean 'USB_EPNO_MASK'? 413 | epinfo->maxpacket = (epdesc->mxpacketsize & USB_EP_MAXP_MASK) * Signed-off-by: v-tangmeng <v-tangmeng@xiaomi.com> | 2 个月前 | |
fix compile error Signed-off-by: hujun5 <hujun5@xiaomi.com> | 2 个月前 | |
sim: add global work queue to replace HPWORK sensor work in hpwork are waiting for remote buffer, remote get buffer and callback to notify ap, but callback also in hpwork, deadlock occurs here. now we move callback to new global work queue instead of hpwork to fix deadlock. Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
sim64_smp4: sim_wifihost should use kmm_zalloc mm_zalloc() is not implement in sim_ummheap.c, and mm_zalloc() in mm_zalloc.c expect struct mm_heap_s in mm.h rather than that in sim_ummheap.c. so sim_wifihost should use kmm_zalloc. Signed-off-by: guanyi3 <guanyi3@xiaomi.com> | 2 个月前 | |
simwifi: Refactor the interfaces of simwifi and simnet Signed-off-by: liqinhui <liqinhui@xiaomi.com> | 2 个月前 | |
v4l2m2m/sim encoder: move hostencoder to x264encoder Signed-off-by: shizhenghui <shizhenghui@xiaomi.com> | 2 个月前 | |
v4l2m2m/sim encoder: move hostencoder to x264encoder Signed-off-by: shizhenghui <shizhenghui@xiaomi.com> | 2 个月前 |