yinshengkai
9852428953
fs: procfs add poll support
...
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-12-26 19:23:13 -08:00
chao an
664927c86e
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>
2023-08-30 14:34:20 +08:00
chao an
b60f01a55b
inode/i_private: remove all unnecessary cast for i_private
...
Signed-off-by: chao an <anchao@xiaomi.com>
2023-08-29 08:58:07 +02:00
chao an
7aa45305b7
fs/inode: remove all unnecessary check for filep/inode
...
Since VFS layer already contains sanity checks, so remove unnecessary lower half checks
Signed-off-by: chao an <anchao@xiaomi.com>
2023-08-29 09:47:11 +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
Xiang Xiao
dd631265c4
fs: Add g_ prefix for all global mountpt_operations instances
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-04-24 16:13:29 +02:00
Ville Juven
30bae2ca47
fs/cromfs: Fix faulty DEBUGASSERT() check
...
The logic being tested is wrong, obviously when accessing file the
driver private data has to be valid (open() has been called).
2023-04-21 10:29:08 -04:00
Xiang Xiao
b0a0ba3ad7
fs: Move mmap callback before truncate in [file|mountpt]_operations
...
since mmap may exist in block_operations, but truncate may not,
moving mmap beforee truncate could make three struct more compatible
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-01-04 17:43:59 +02:00
Jukka Laitinen
f33dc4df3f
Change FIOC_MMAP into file operation call
...
- Add mmap into file_operations and remove it from ioctl definitions.
- Add mm_map structure definitions to support future unmapping
- Modify all drivers to initialize the operations struct accordingly
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2023-01-02 11:23:20 -03:00
Jukka Laitinen
41e9df2f3e
Add ftruncate into file operation calls
...
- Add truncate into file_operations
- Move truncate to be common for mountpt_operations and file_operations
- Modify all drivers to initialize the operations struct accordingly
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2023-01-02 11:23:20 -03:00
Jiuzhu Dong
fe17f747a7
fs/directory: move private directory information to filesystem
...
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-08-09 23:30:01 +08:00
Jiuzhu Dong
90db4daca9
fs/directory: update readdir interface for all filesystem
...
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-08-09 23:30:01 +08:00
zhouliang3
1f53a058fa
nuttx:Change fs strncpy to strlcpy to avoid losing'\0'
...
Signed-off-by: zhouliang3 <zhouliang3@xiaomi.com>
2021-12-30 18:06:00 +08:00
Xiang Xiao
307cc61893
fs: Add fchstat and chstat callback into mountpt_operations
...
and implement all status related change function. the individual
file system change will provide in other upcoming patchset.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I8fde9db8eba9586e9c8da078b67e020c26623cf4
2021-07-29 06:33:49 -03:00
David Sidrane
22b719945f
fs:cromf Use inttypes in printing macros
2021-05-04 09:40:51 +01:00
Jiuzhu Dong
13100cf248
fs/readdir: Must reserve a byte for the NUL terminator
...
Change-Id: I1df0c278d289b90cc54512c0ee256a95549785ca
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-01-26 18:22:35 -08:00
YAMAMOTO Takashi
4911b1121b
fs/cromfs/fs_cromfs.c: Fix a syslog format
2020-11-24 22:31:33 -08:00
David Sidrane
2953880f5c
fs_cromfs: Removed DEBUGASSERT on non-exiting var node
2020-08-20 14:10:02 +01:00
Gregory Nutt
b256b2055f
Add support to hard links to CROMFS
...
This will resolve numerous problems with the way that hard links, in particular "." and ".." are handled. Instead of trying to fudge the stat flags, the correct implementation is to follow the hard link to the final link target node. That is what must determine the attributes of the directory entry.
2020-08-11 07:48:08 -07:00
David Sidrane
2eccc960a9
fs_cromfs:Remove duplicate case intorduced by 67ef70d
2020-08-04 21:20:25 -05:00
Xiang Xiao
67ef70d460
vfs/dirread: Should return the same file type as lstat
...
by extend the possible value of d_type for the special file
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-07-07 13:41:10 +01:00
Xiang Xiao
91ed14c631
vfs/stat: Make the flag defintion more confirm POSIX standard
...
specified here:
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_stat.h.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-07-07 13:41:10 +01:00
Gregory Nutt
b599aa0cee
fs/cromfs/fs_cromfs.c: Back out an erroneous change I made during a code review. Noted by Jussi Kivilinna.
2019-12-02 08:44:50 -06:00
Gregory Nutt
d2af57169b
tools/nxstyle.c: Fix a rare false alarm that could occur if a variable or function name begins with the sub-string 'union' or 'struct'. misc fixes under fs/ and sched/ from application of current version of nxstyle.
2019-12-01 13:01:16 -06:00
Gregory Nutt
bd3cc792ff
fs/: Run all .c files under fs/ through tools/nxstyle.
2019-10-27 11:48:14 -06:00
Gregory Nutt
dd97fb991b
This commit moves shared builtin information out of binfmt/libbuiltin and into libs/libc/builtin where it can be shared. This should permit builtin application in the PROTECTED build where binfmt/libbuiltin is not available in user space.
...
Squashed commit of the following:
Correct some additional compile-related issues.
Move include/nuttx/binfmt/builtin.h to include/nuttx/lib/builtin.h. Move apps/builtin/lib_builtin_forindex.c to libs/libc/builtin/lib_builtin_forindex.c.
Move binfmt/libbuiltin to libs/libc/builtin. There are calls made directly from apps/nshlib into this logic and hence, must be part of a library that can be shared between the OS and applications.
2019-08-23 09:07:40 -06:00
Gregory Nutt
be3dd0bac6
fs/: Fix various coding standard issues found while testing tools/nxstyle.c
2019-03-01 15:01:04 -06:00
David Sidrane
b30db5dcb0
fs/cromfs/fs_cromfs.c: Fixes hardfault
2018-12-06 16:42:20 -06:00
Gregory Nutt
67e0603b5a
fs/cromfs: Block length only needs to be uint16_t, not uint32_t. Add pading to node structure to assue that alignment is the same on all platforms. tools/gencromfs.c: Fix the target offset of the '.' hard link.
2018-03-24 14:44:38 -06:00
Gregory Nutt
8b4b61f140
fs/cromfs: Fix a error in reading partial compressed blocks. The LZF decompressor does not support that operation. Instead we have to decompress full block into a temporary buffer and copy out the parts that we need. To compensate for the performance hit, a caching mechanism was added so that we do not have to read the same block repeatedly. Unrelated: Also updates some README files.
2018-03-24 11:30:35 -06:00
Gregory Nutt
f2b72c344b
fs/cromfs: Fix a loop condition that was causing errors on large files
2018-03-20 19:49:42 -06:00
Gregory Nutt
16d0a8c2d1
fs/cromfs: More directory traversal fixes. tools/gencromfs.c: Add ability use a callback with directory traversal. Not currently used but left in place in case it is needed in the future.
2018-03-20 16:20:31 -06:00
Gregory Nutt
aeeee54921
tools/gencromfs.c and fs/cromfs: More corrections to directory traversal logic. Still some bugs.
2018-03-20 14:30:05 -06:00
Gregory Nutt
22484386ee
fs/cromfs and tools/gencromfs: Various fixes for traversal relative file paths. Biggest changes is in types used: Cannot use size_t or mode_t in common structures because they have different sizes on the (64-bit) host and the (32-bit) target. Use uint32_t instead of size_t for offsets. Use uint16_t instead of mode_t.
2018-03-20 12:37:01 -06:00
Gregory Nutt
87fd4e2916
fs/cromfs: Fix read logic. tools/genromfs.c: Last node in directory needs to have zero for peer offset. Still some issues with empty directories.
2018-03-20 10:37:42 -06:00
Gregory Nutt
0478b5bce4
Addes CROMFS prototype. CROMFS is a commpressed, in-memory read-only file system based on LZF.
...
Squashed commit of the following:
fs/cromfs: Now depends on EXPERIMENTAL because it is not yet verified.
fs/cromfs: This commit brings the CROMFS file system to code complete. Still completely untested. Next steps: Need a tool to generate CROMFS file system images and a test case under apps/
fs/cromfs: Add logic to traverse the in-memory file system nodes.
fs/cromfs: Add initial support for an in-memory, compressed, read-only file system.
2018-03-19 07:08:40 -06:00