walnux/fs
dongjiuzhu1 cfd359141f fs/drivers: Avoid causing a busy loop in the program due to context switching induced by sem_post.
examples:
There are two threads involved: thread A with a priority of 100 and
thread B with a priority of 101. Here's how they interact:

When thread A releases a semaphore, thread B is scheduled to execute
some code and may reacquire the semaphore. If no other tasks are ready,
thread A will be scheduled to run.
This continuous process can lead to a busy loop.

Thread A:                                                   Thread B:

while (nxsem_get_value(&priv->wait, &semcount) >= 0 &&  <---
       semcount <= 0)                                      |  2)context switch
  {                                  1)contex switch       |
    nxsem_post(&priv->wait);         ------------->     run some code and nxsem_wait again
  }

Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
2025-03-17 10:44:26 +01:00
..
aio fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
binfs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
cromfs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
driver fs: add merge partitions support 2024-11-07 14:59:23 +08:00
event Fix path error 2024-11-28 15:04:59 +08:00
fat fs/fat/fs_fat32util.c: fix potential exception due to dividing zero during mounting when fat is corrupted 2024-12-13 11:22:54 +08:00
hostfs hostfs_open:return errno from host 2025-01-14 23:03:20 +08:00
inode sched/spin_lock: rename raw_spin_lock to spin_lock_notrace 2025-02-13 20:48:15 +08:00
littlefs littlefs/cmake: fix build issue 2025-02-11 23:22:07 +08:00
mmap fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
mnemofs fix nxstyle 2024-12-10 01:29:00 +08:00
mount wqueue: wqueue remove csection 2025-01-15 17:26:07 +08:00
mqueue arch_atomic: only support atomic_xx and atomic64_xx function 2024-12-04 14:03:14 +01:00
nfs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
notify fs/drivers: Avoid causing a busy loop in the program due to context switching induced by sem_post. 2025-03-17 10:44:26 +01:00
nxffs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
partition fs/partition/txtable: Fix panic when no txtable was found in last eraseblock 2024-11-26 18:23:06 +08:00
procfs procfs/meminfo: align page fields to columns 2025-01-22 20:29:07 +08:00
romfs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
rpmsgfs Use lib_get_pathbuffer instead of stack variables 2024-11-12 17:21:42 +08:00
semaphore fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
shm fs/shm/shmfs_alloc.c: Allocate zero-initialized memory in flat build 2024-12-12 21:47:41 +08:00
smartfs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
socket Map user memory passed to accept() in kernel build 2024-12-20 00:57:40 +02:00
spiffs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
tmpfs fs/tmpfs: Skip any slash at the beginning of relpath 2024-12-07 11:40:00 +08:00
unionfs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
userfs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
v9fs fs/virtio-9p:When virtio-9p is not supported, return -ENODEV 2025-03-13 16:37:20 -03:00
vfs fs/uio: do not overwrite the return value 2025-01-22 16:45:46 +08:00
zipfs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
CMakeLists.txt fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
fs_heap.c fs_heap:add fs_heap_mallinfo_task 2025-01-15 17:12:50 +08:00
fs_heap.h fs_heap:add fs_heap_mallinfo_task 2025-01-15 17:12:50 +08:00
fs_initialize.c fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
Kconfig fs/reference_count: set default reference count option depends on DISABLE_PTHREAD 2024-12-12 13:47:22 +08:00
Make.defs fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00
Makefile fs: migrate to SPDX identifier 2024-11-06 01:58:54 +08:00