posix: deprecate POSIX_MAX_FDS and add POSIX_DEVICE_IO
The POSIX_MAX_FDS option does not correspond to any standard POSIX option. It was used to define the size of the file descriptor table, which is by no means exclusively used by POSIX (also net, fs, ...). POSIX_MAX_FDS is being deprecated in order to ensure that Zephyr's POSIX Kconfig variables correspond to those defined in the specification, as of IEEE 1003.1-2017. Namely, POSIX_OPEN_MAX. CONFIG_POSIX_MAX_OPEN_FILES is being deprecated for the same reason. To mitigate any possible layering violations, that option is not user selectable. It tracks the newly added CONFIG_ZVFS_OPEN_MAX option, which is native to Zephyr. With this deprecation, we introduce the following Kconfig options that map directly to standard POSIX Option Groups by simply removing "CONFIG_": * CONFIG_POSIX_DEVICE_IO Similarly, with this deprecation, we introduce the following Kconfig options that map directly to standard POSIX Options by simply removing "CONFIG": * CONFIG_POSIX_OPEN_MAX In order to maintain parity with the current feature set, we introduce the following Kconfig options. * CONFIG_POSIX_DEVICE_IO_ALIAS_CLOSE * CONFIG_POSIX_DEVICE_IO_ALIAS_OPEN * CONFIG_POSIX_DEVICE_IO_ALIAS_READ * CONFIG_POSIX_DEVICE_IO_ALIAS_WRITE Gate open(), close(), read(), and write() via the CONFIG_POSIX_DEVICE_IO Kconfig option and move implementations into device_io.c, to be conformant with the spec. Lastly, stage function names for upcoming ZVFS work, to be completed as part of the LTSv3 Roadmap (e.g. zvfs_open(), ..). Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
This commit is contained in:
parent
3f469665f4
commit
bc4374b5fe
57 changed files with 237 additions and 128 deletions
|
@ -14,7 +14,7 @@ CONFIG_THRIFT_SSL_SOCKET=y
|
|||
# tcp sockets (client, server): 2
|
||||
# tls sockets (client, server): 2
|
||||
# socketpairs for cancellation (accept, client, server): 6
|
||||
CONFIG_POSIX_MAX_FDS=15
|
||||
CONFIG_ZVFS_OPEN_MAX=15
|
||||
|
||||
# TLS configuration
|
||||
CONFIG_MBEDTLS=y
|
||||
|
|
|
@ -51,7 +51,7 @@ CONFIG_NET_PKT_RX_COUNT=20
|
|||
# stdin, stdout, stderr: 3
|
||||
# socketpair for channel: 2
|
||||
# eventfd for cancellation: 1
|
||||
CONFIG_POSIX_MAX_FDS=6
|
||||
CONFIG_ZVFS_OPEN_MAX=6
|
||||
|
||||
# Network address config
|
||||
CONFIG_NET_IPV4=y
|
||||
|
|
|
@ -30,4 +30,4 @@ CONFIG_ZTEST=y
|
|||
|
||||
CONFIG_MAIN_STACK_SIZE=1344
|
||||
CONFIG_NET_SOCKETS_POLL_MAX=9
|
||||
CONFIG_POSIX_MAX_FDS=8
|
||||
CONFIG_ZVFS_OPEN_MAX=8
|
||||
|
|
|
@ -9,7 +9,7 @@ CONFIG_ENTROPY_GENERATOR=y
|
|||
CONFIG_TEST_RANDOM_GENERATOR=y
|
||||
CONFIG_ZTEST_STACK_SIZE=1024
|
||||
|
||||
CONFIG_POSIX_MAX_FDS=10
|
||||
CONFIG_ZVFS_OPEN_MAX=10
|
||||
CONFIG_REQUIRES_FULL_LIBC=y
|
||||
CONFIG_EVENTFD_MAX=10
|
||||
CONFIG_NET_MAX_CONTEXTS=10
|
||||
|
|
|
@ -7,7 +7,7 @@ CONFIG_POSIX_API=y
|
|||
|
||||
CONFIG_ENTROPY_GENERATOR=y
|
||||
CONFIG_TEST_RANDOM_GENERATOR=y
|
||||
CONFIG_POSIX_MAX_FDS=10
|
||||
CONFIG_ZVFS_OPEN_MAX=10
|
||||
CONFIG_REQUIRES_FULL_LIBC=y
|
||||
CONFIG_EVENTFD_MAX=10
|
||||
CONFIG_NET_MAX_CONTEXTS=10
|
||||
|
|
|
@ -37,9 +37,9 @@ CONFIG_NET_BUF_TX_COUNT=128
|
|||
CONFIG_NET_BUF_RX_COUNT=128
|
||||
CONFIG_NET_PKT_TX_COUNT=16
|
||||
CONFIG_NET_PKT_RX_COUNT=16
|
||||
CONFIG_POSIX_MAX_FDS=32
|
||||
CONFIG_ZVFS_OPEN_MAX=32
|
||||
CONFIG_NET_SOCKETS_POLL_MAX=32
|
||||
CONFIG_POSIX_MAX_FDS=32
|
||||
CONFIG_ZVFS_OPEN_MAX=32
|
||||
CONFIG_REQUIRES_FULL_LIBC=y
|
||||
CONFIG_EVENTFD_MAX=10
|
||||
CONFIG_NET_MAX_CONTEXTS=10
|
||||
|
|
|
@ -7,7 +7,7 @@ CONFIG_NET_L2_ETHERNET=n
|
|||
CONFIG_NET_UDP=y
|
||||
CONFIG_NET_IPV4=y
|
||||
CONFIG_NET_SOCKETS=y
|
||||
CONFIG_POSIX_MAX_FDS=2
|
||||
CONFIG_ZVFS_OPEN_MAX=2
|
||||
CONFIG_ZTEST_STACK_SIZE=2048
|
||||
CONFIG_MAIN_STACK_SIZE=2048
|
||||
CONFIG_NET_LOG=y
|
||||
|
|
|
@ -6,7 +6,7 @@ CONFIG_NET_UDP=y
|
|||
CONFIG_NET_TCP=n
|
||||
CONFIG_NET_SOCKETS=y
|
||||
CONFIG_NET_SOCKETS_PACKET=y
|
||||
CONFIG_POSIX_MAX_FDS=8
|
||||
CONFIG_ZVFS_OPEN_MAX=8
|
||||
CONFIG_NET_IPV6_DAD=n
|
||||
CONFIG_NET_IPV6_MLD=n
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ CONFIG_NET_UDP=n
|
|||
CONFIG_NET_TCP=n
|
||||
CONFIG_NET_SOCKETS=y
|
||||
CONFIG_NET_SOCKETS_PACKET=y
|
||||
CONFIG_POSIX_MAX_FDS=8
|
||||
CONFIG_ZVFS_OPEN_MAX=8
|
||||
CONFIG_NET_SOCKETS_LOG_LEVEL_DBG=y
|
||||
CONFIG_NET_CORE_LOG_LEVEL_DBG=y
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ CONFIG_NET_IPV6=y
|
|||
CONFIG_NET_UDP=y
|
||||
CONFIG_NET_TCP=y
|
||||
CONFIG_NET_SOCKETS=y
|
||||
CONFIG_POSIX_MAX_FDS=10
|
||||
CONFIG_ZVFS_OPEN_MAX=10
|
||||
CONFIG_NET_PKT_TX_COUNT=8
|
||||
CONFIG_NET_PKT_RX_COUNT=8
|
||||
CONFIG_NET_MAX_CONN=5
|
||||
|
|
|
@ -28,7 +28,7 @@ CONFIG_NET_CONTEXT_REUSEPORT=y
|
|||
CONFIG_NET_HOSTNAME_ENABLE=y
|
||||
CONFIG_NET_HOSTNAME="ztest_hostname"
|
||||
|
||||
CONFIG_POSIX_MAX_FDS=8
|
||||
CONFIG_ZVFS_OPEN_MAX=8
|
||||
CONFIG_NET_MAX_CONN=10
|
||||
CONFIG_NET_MAX_CONTEXTS=10
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ CONFIG_NET_IPV4=n
|
|||
CONFIG_NET_IPV6=y
|
||||
CONFIG_NET_SOCKETS=y
|
||||
# Defines fd_set size
|
||||
CONFIG_POSIX_MAX_FDS=33
|
||||
CONFIG_ZVFS_OPEN_MAX=33
|
||||
|
||||
# Network driver config
|
||||
CONFIG_TEST_RANDOM_GENERATOR=y
|
||||
|
|
|
@ -34,7 +34,7 @@ ZTEST_USER(net_socket_select, test_fd_set)
|
|||
{
|
||||
zsock_fd_set set;
|
||||
|
||||
/* Relies on specific value of CONFIG_POSIX_MAX_FDS in prj.conf */
|
||||
/* Relies on specific value of CONFIG_ZVFS_OPEN_MAX in prj.conf */
|
||||
zassert_equal(sizeof(set.bitset), sizeof(uint32_t) * 2, "");
|
||||
|
||||
ZSOCK_FD_ZERO(&set);
|
||||
|
|
|
@ -5,7 +5,7 @@ CONFIG_NET_IPV6=y
|
|||
CONFIG_NET_UDP=y
|
||||
CONFIG_NET_TCP=y
|
||||
CONFIG_NET_SOCKETS=y
|
||||
CONFIG_POSIX_MAX_FDS=10
|
||||
CONFIG_ZVFS_OPEN_MAX=10
|
||||
CONFIG_NET_PKT_TX_COUNT=8
|
||||
CONFIG_NET_PKT_RX_COUNT=8
|
||||
CONFIG_NET_MAX_CONN=5
|
||||
|
|
|
@ -7,7 +7,7 @@ CONFIG_NET_IPV4=y
|
|||
CONFIG_NET_SOCKETS=y
|
||||
CONFIG_NET_SOCKETPAIR=y
|
||||
CONFIG_NET_SOCKETPAIR_BUFFER_SIZE=64
|
||||
CONFIG_POSIX_MAX_FDS=10
|
||||
CONFIG_ZVFS_OPEN_MAX=10
|
||||
|
||||
# Network driver config
|
||||
CONFIG_TEST_RANDOM_GENERATOR=y
|
||||
|
|
|
@ -11,7 +11,7 @@ CONFIG_NET_IPV6=y
|
|||
CONFIG_NET_IPV6_ND=n
|
||||
CONFIG_NET_TCP=y
|
||||
CONFIG_NET_SOCKETS=y
|
||||
CONFIG_POSIX_MAX_FDS=10
|
||||
CONFIG_ZVFS_OPEN_MAX=10
|
||||
|
||||
# Network driver config
|
||||
CONFIG_NET_DRIVERS=y
|
||||
|
|
|
@ -2491,7 +2491,7 @@ static void after(void *arg)
|
|||
{
|
||||
ARG_UNUSED(arg);
|
||||
|
||||
for (int i = 0; i < CONFIG_POSIX_MAX_FDS; ++i) {
|
||||
for (int i = 0; i < CONFIG_ZVFS_OPEN_MAX; ++i) {
|
||||
(void)zsock_close(i);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ CONFIG_NET_SOCKETS_TLS_MAX_CONTEXTS=4
|
|||
CONFIG_NET_CONTEXT_RCVTIMEO=y
|
||||
CONFIG_NET_CONTEXT_SNDTIMEO=y
|
||||
CONFIG_NET_CONTEXT_RCVBUF=y
|
||||
CONFIG_POSIX_MAX_FDS=20
|
||||
CONFIG_ZVFS_OPEN_MAX=20
|
||||
|
||||
# Keep timings short for the test
|
||||
CONFIG_NET_TCP_TIME_WAIT_DELAY=10
|
||||
|
|
|
@ -29,7 +29,7 @@ CONFIG_NET_BUF_TX_COUNT=64
|
|||
CONFIG_NET_PKT_TX_COUNT=64
|
||||
CONFIG_NET_BUF_RX_COUNT=64
|
||||
CONFIG_NET_PKT_RX_COUNT=64
|
||||
CONFIG_POSIX_MAX_FDS=10
|
||||
CONFIG_ZVFS_OPEN_MAX=10
|
||||
|
||||
# Stack sizes
|
||||
CONFIG_MAIN_STACK_SIZE=2048
|
||||
|
|
|
@ -7,7 +7,7 @@ CONFIG_NET_IPV4=y
|
|||
CONFIG_NET_IPV6=y
|
||||
CONFIG_NET_UDP=y
|
||||
CONFIG_NET_SOCKETS=y
|
||||
CONFIG_POSIX_MAX_FDS=10
|
||||
CONFIG_ZVFS_OPEN_MAX=10
|
||||
CONFIG_NET_IF_UNICAST_IPV6_ADDR_COUNT=3
|
||||
CONFIG_NET_IPV6_DAD=n
|
||||
CONFIG_NET_IPV6_MLD=n
|
||||
|
|
|
@ -2532,7 +2532,7 @@ static void after(void *arg)
|
|||
{
|
||||
ARG_UNUSED(arg);
|
||||
|
||||
for (int i = 0; i < CONFIG_POSIX_MAX_FDS; ++i) {
|
||||
for (int i = 0; i < CONFIG_ZVFS_OPEN_MAX; ++i) {
|
||||
(void)zsock_close(i);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -290,7 +290,7 @@ ZTEST(posix_fs_file_test, test_fs_unlink)
|
|||
ZTEST(posix_fs_file_test, test_fs_fd_leak)
|
||||
{
|
||||
const int reps =
|
||||
MAX(CONFIG_POSIX_MAX_OPEN_FILES, CONFIG_POSIX_MAX_FDS) + 5;
|
||||
MAX(CONFIG_POSIX_OPEN_MAX, CONFIG_ZVFS_OPEN_MAX) + 5;
|
||||
|
||||
for (int i = 0; i < reps; i++) {
|
||||
if (i > 0) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue