fs/streams: Move the file streams from the group structure into TLS

This is preparation for flushing streams from user space, like it should
be done.

- Move tg_streamlist (group, kernel space) ->
       ta_streamlist (TLS, user space)
- Access stream list via tg_info in kernel
- Access stream list via TLS in user space
- Remove / rename nxsched_get_streams -> lib_getstreams
- Remove system call for nxsched_get_streams
This commit is contained in:
Ville Juven 2022-12-21 15:13:14 +02:00 • committed by Xiang Xiao
parent 1a8cbc0b99
commit 2ed51d026c
15 changed files with 32 additions and 111 deletions

View file

@ -34,6 +34,7 @@
#include <nuttx/semaphore.h>
#include <nuttx/fs/fs.h>
#include <nuttx/lib/lib.h>
#include <nuttx/tls.h>
#include "inode/inode.h"
@ -153,11 +154,7 @@ int fs_fdopen(int fd, int oflags, FAR struct tcb_s *tcb,
/* Get the stream list from the TCB */
#ifdef CONFIG_MM_KERNEL_HEAP
slist = tcb->group->tg_streamlist;
#else
slist = &tcb->group->tg_streamlist;
#endif
slist = &tcb->group->tg_info->ta_streamlist;
/* Allocate FILE structure */