chao an
13cdffd302
fs/procfs: fix readdir loss last character
...
nsh> ls proc/fs
/proc/fs: ----> /proc/fs:
block blocks
moun mount
usag usage
Signed-off-by: chao an <anchao@xiaomi.com>
2023-04-23 17:13:51 +08:00
Xiang Xiao
4be499a243
procfs: Make g_procfs_entries in the alphabetic order
...
and option in procfs/Kconfig
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-04-22 03:33:50 -04:00
Xiang Xiao
c6d210289f
procfs: remove procfs_ from procfs_operations variables
...
to aglin the naming style with other implementation
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-04-22 03:33:50 -04:00
Xiang Xiao
149cafe450
procfs: Add g_ prefix to all procfs_operations
...
to conform the coding style
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-04-22 03:33:50 -04:00
chao an
2ffe564fa2
fs/procfs: sort level0 process id
...
Signed-off-by: chao an <anchao@xiaomi.com>
2023-01-30 14:57:43 +08: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
Xiang Xiao
38d1244751
mm/mempool: Remove MM_MEMPOOL option from Kconfig
...
since the linker can remove the unused object file from the final image
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-11-08 10:18:27 -03:00
Xiang Xiao
36c05601df
fs/procfs: Fix warning when all CONFIG_FS_PROCFS_EXCLUDE_xxx are enabled
...
procfs/fs_procfs.c: In function 'procfs_readdir':
Error: procfs/fs_procfs.c:719:9: error: unused variable 'pid' [-Werror=unused-variable]
719 | pid_t pid;
| ^~~
Error: procfs/fs_procfs.c:716:21: error: unused variable 'tcb' [-Werror=unused-variable]
716 | FAR struct tcb_s *tcb;
| ^~~
procfs/fs_procfs.c: At top level:
Error: procfs/fs_procfs.c:206:16: error: 'procfs_enum' declared 'static' but never defined [-Werror=unused-function]
206 | static void procfs_enum(FAR struct tcb_s *tcb, FAR void *arg);
| ^~~~~~~~~~~
procfs/fs_procfs.c: In function 'procfs_readdir':
Error: procfs/fs_procfs.c:878:35: error: array subscript <unknown> is outside array bounds of 'const struct procfs_entry_s[0]' [-Werror=array-bounds]
878 | if (strncmp(g_procfs_entries[level1->base.index].pathpattern,
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
procfs/fs_procfs.c:98:36: note: while referencing 'g_procfs_entries'
98 | static const struct procfs_entry_s g_procfs_entries[] =
| ^~~~~~~~~~~~~~~~
Error: procfs/fs_procfs.c:879:35: error: array subscript <unknown> is outside array bounds of 'const struct procfs_entry_s[0]' [-Werror=array-bounds]
879 | g_procfs_entries[level1->firstindex].pathpattern,
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
procfs/fs_procfs.c:98:36: note: while referencing 'g_procfs_entries'
98 | static const struct procfs_entry_s g_procfs_entries[] =
| ^~~~~~~~~~~~~~~~
Error: procfs/fs_procfs.c:745:24: error: array subscript <unknown> is outside array bounds of 'const struct procfs_entry_s[0]' [-Werror=array-bounds]
745 | pentry = &g_procfs_entries[index - priv->nentries];
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
procfs/fs_procfs.c:98:36: note: while referencing 'g_procfs_entries'
98 | static const struct procfs_entry_s g_procfs_entries[] =
| ^~~~~~~~~~~~~~~~
Error: procfs/fs_procfs.c:745:41: error: array subscript <unknown> is outside array bounds of 'const struct procfs_entry_s[0]' [-Werror=array-bounds]
745 | pentry = &g_procfs_entries[index - priv->nentries];
| ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-18 15:10:26 +09:00
Xiang Xiao
befc748460
fs/procfs: Simplify the code logic and fix the style issue
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-10-18 15:10:26 +09:00
Huang Qi
e4e3208180
Replace all strncpy with strlcpy for safety
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-08-25 13:38:36 +08: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
Jiuzhu Dong
c18b5602e8
fs/procfs: add mempool info to proc/mempool
...
server> cat /proc/mempool
total bsize nused nfree nifree nwaiter
hello: 400 20 17 3 0 0
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-08-09 15:38:57 +08:00
ligd
c0f2b7811e
pm: add pm procfs support
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-07-26 11:11:00 +08:00
ligd
1f854486c3
procfs: procfs_opendir should return fail if can't match
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-07-22 10:53:44 +08:00
Jiuzhu Dong
c5ba9261bc
procfs: add memdump interface to dump used/free memory info
...
usage:echo <used/free> > /proc/memdump
echo used > /proc/memdump // output all used memory node info(address + size)
echo free > /proc/memdump // output all free memory node info(address + size)
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-02-26 14:32:42 +08:00
Jiuzhu Dong
f93c17be94
fs/procfs: fix readdir loss last character
...
nsh> ls
/proc:
0/
1/
2/
3/
4/
5/
meminf
iobinf
f/
ne/
sel/
uptim
versio
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-01-05 21:58:38 +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
zhuyanlin
e53aeea60e
fs:procfs: add tcbinfo procfs interface
...
Add tcbinfo in procfs system.
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2021-11-10 14:31:10 -03:00
Xiang Xiao
a262eebe34
libc: Rename match to fnmatch
...
specified here:
https://pubs.opengroup.org/onlinepubs/007904875/functions/fnmatch.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-08-02 08:23:35 -03: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
Jiuzhu Dong
9b1f554429
sched: Dynamically extend the pid hash table
...
Change-Id: I3a719bc575cd408cd530a39efa203f507b44fa9c
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-07-11 19:42:30 -07:00
ligd
2c775bb0c9
fs/procfs: fix heap overflow when snprintf meet long string
...
Change-Id: I90f2d9fab55b6e69f159855af3d6dbcb81142eb8
Signed-off-by: ligd <liguiding1@xiaomi.com>
2021-07-02 08:25:02 -05:00
Gregory Nutt
e880bc9a71
Remove unused, non-modular procfs reference
...
fs/procfs/fs_procfs.c contained an unused reference to an STM32 procfs structure. This is wrong in two ways: (1) There should be not STM32 references outside of arch/arm and boards/arm and (2) the declare STM32 structure is not used anyway.
2020-08-22 16:22:18 +01:00
Gregory Nutt
4b44b628ea
Run nxstyle against all .c and .h files modified by this PR.
...
All complaints fixed except for those that were not possible to fix:
- Used of Mixed case identifier in ESP32 files. These are references to Expressif ROM functions which are outside of the scope of NuttX.
2020-05-09 14:19:08 -03:00
Gregory Nutt
a4218e2144
include/nuttx/sched.h: Make naming of all internal names consistent:
...
1. Add internal scheduler functions should begin with nxsched_, not sched_
2. Follow the consistent naming patter of https://cwiki.apache.org/confluence/display/NUTTX/Naming+of+OS+Internal+Functions
2020-05-09 14:19:08 -03:00
Xiang Xiao
cde88cabcc
Run codespell -w with the latest dictonary again
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-02-23 22:27:46 +01:00
Gregory Nutt
bd3cc792ff
fs/: Run all .c files under fs/ through tools/nxstyle.
2019-10-27 11:48:14 -06:00
Anthony Merlino
70404ed0dc
Merged in antmerlino/nuttx/iobinstrumentation (pull request #1001 )
...
Iobinstrumentation
* mm/iob: Introduces producer/consumer id to every iob call. This is so that the calls can be instrumented to monitor the IOB resources.
* iob instrumentation - Merges producer/consumer enumeration for simpler IOB user.
* fs/procfs: Starts adding support for /proc/iobinfo
* fs/procfs: Finishes first pass of simple IOB user stastics and /proc/iobinfo entry
Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-16 22:42:25 +00:00
Gregory Nutt
f60301665b
fs/procfs/fs_procfs.c: procfs_initialize() is used only within fs/procfs/fs_procfs.c and, hence, should be marked 'static'.
2019-05-25 14:12:00 -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
Xiang Xiao
1e0e1ae856
fs/procfs: Remove the unnecessary critical section
2018-11-29 12:51:34 -06:00
Gregory Nutt
85c31fd4a2
fs/procfs/fs_procfscritmon.c and sched/sched/sched_critmonitor.c: Add support for global pre-emption and global critical sections to monitor as suggested by Xiang Xaio.
2018-11-24 13:33:37 -06:00
iuhaitao
82e0b0328b
fs/procfs: Add /proc/version support to get version info
2018-11-08 10:13:45 -06:00
Xiang Xiao
247414c6ad
drivers/mtd and other MTD drivers: Remove mtd_procfsoperations since we can now get the same information from inode
2018-11-08 09:46:11 -06:00
Gregory Nutt
f980200ac4
fs/procfs/: Add support for /proc, a convenient way for getting information about the currently running task.
2018-08-18 18:00:23 -06:00
Alan Carvalho de Assis
283b73edc5
Fix lots of typos in C comments and Kconfig help text
2018-07-08 18:24:45 -06:00
Gregory Nutt
0080225473
sched/irq: Add a configuration option to show interrupt information via a procfs file.
2018-01-12 18:26:46 -06:00
Gregory Nutt
e4652bd3dc
Squashed commit of the following:
...
fs: Add truncate() support for userfs
fs/unionfs: Add truncate() support to the unionfs
fs/tmpfs: Add ftruncate() support to tmpfs
syscall/: Add system call support for ftruncate()
net/route: Adding ftruncate() support eliminates an issue in file-based routing table management.
fs: Add basic framework to support truncate() and ftruncate(). The infrastructure is complete. Now, however, the actual implementation of ftruncate() will have to be done for each file system.
2018-01-03 16:03:56 -06:00
Gregory Nutt
f068eb579c
fs/procfs: Correct ordering of procfs entries. For consistency, use alphbetical ordering.
2017-11-24 10:00:35 -06:00
Gregory Nutt
a6aa4ac5f5
fs/procfs: Optimization of previous commits. /proc/umm and proc/progmem are deleted. /proc/kmm is renamed /proc/meminfo and contains the output that was in all three files previously.
2017-11-13 13:33:12 -06:00
Gregory Nutt
070d40260b
profcs: At file to should user space heap. This replaces the NSH free command.
2017-11-13 12:51:33 -06:00
Gregory Nutt
f3b37e5da3
fs/procfs/fs_procfsprogrem: Add /proc/progmem. This is an alternative way to get the information that was previoulsy available in apps/system/free. apps/system/free was removed beause it made illegal calls into the OS violating the portable interface. This new procfs entry provides the same information with no such violation.
2017-11-13 09:08:39 -06:00
Gregory Nutt
a50c5d6674
fs/procfs: Restore a necessary chagne that was lost with commit 07f441eecb
2017-10-28 17:13:52 -06:00
Gregory Nutt
07f441eecb
Missing some conditional logic for cases where mountpoint procfd entries excluded.
2017-10-27 06:06:20 -06:00
Gregory Nutt
ea13e24392
Correct a problem that was causing an apparent directory to be reported as a file instead of a directory by opendir.
...
This happened after adding these three new procfs entries:
fs/block
fs/mount
fs/usage
Of course, there is no directory fs in this case, only three files that have fs/ in their relative pathnames. The logic was detecting that fs was the name of the enty to report, but it was then declaring that fs was a file (because fs/block is of type file).
This was fixed by adding a check for matching lenghts. i.e., if strlen(fs) != strlen(fs/block), then report fs as a directory instead of a file.
2017-10-26 16:30:59 -06:00
Gregory Nutt
1ed816de4b
Squashed commit of the following:
...
fs/mount: Implements procfs /proc/fs/blocks and /proc/fs/usage files, replacing the NSH df command.
fs/mount: Implements procfs /proc/fs/mount file, replacing the NSH mount command when there are not arguments.
fs/: Move prototype of foreach_mountpoint out of include/nuttx/fs/fs.h to fs/mount/mount.h. Add framework for the mount procfs (initial commit is just a close of the net/route table procfs.
2017-10-26 13:33:08 -06:00
Gregory Nutt
d209e0e238
Add file missed in last commit. Fix naming in some configuration items.
2017-08-12 07:26:20 -06:00