mirror of
https://github.com/apache/nuttx.git
synced 2026-05-14 02:58:01 +08:00
cd8e3e18a8
Issue: When using a stack-allocated file structure, the sequence: 1. file_open() initializes the stack file structure 2. file_mmap() creates memory mapping and increments reference count 3. file_munmap() decrements reference count and may free the file structure 4. file_close() attempts to close already freed structure → crash Root cause: The memory mapping operations (fs_reffilep/fs_putfilep) manage reference counts independently and can free the stack-allocated file structure prematurely. Solution: - Add reference count protection during file_open() for stack-allocated files - Clear reference count appropriately during file_close() - This ensures the file structure remains valid throughout its lifetime Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>