Xiang Xiao
f9e3ef3464
Revert "libc/stdio: enable long long formating by CONFIG_HAVE_LONG_LONG"
...
This reverts commit b1c72c023c
.
2022-07-20 18:06:29 +03:00
Xiang Xiao
2166c98809
Add printflike and scanflike to all printf/scanf like functions
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-07-18 14:14:36 +03:00
Gustavo Henrique Nihei
9b0e3ae9d2
libs: Convert DEBUGASSERT(false) into more intuitive DEBUGPANIC()
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-14 12:08:45 +08:00
Xiang Xiao
b1c72c023c
libc/stdio: enable long long formating by CONFIG_HAVE_LONG_LONG
...
and remove CONFIG_LIBC_LONG_LONG option to simplify the usage.
note: the size will increase 668
before change:
text data bss dec hex filename
168440 348 4480 173268 2a4d4 nuttx
after change:
text data bss dec hex filename
169108 348 4480 173936 2a770 nuttx
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-07-13 09:50:38 -03:00
Nathan Hartman
1867bc2210
Fix compiler warnings (-Wunused-parameter) in various functions
...
Fixes the -Wunused-parameter warning in:
* group/group_signal.c: group_signal()
* irq/irq_unexpectedisr.c: irq_unexpected_isr()
* task/task_spawn.c: nxtask_spawn_proxy()
* timer/timer_getoverrun.c: timer_getoverrun()
* misc/dev_null.c: devnull_read(), devnull_write(), devnull_poll()
* misc/dev_zero.c: devzero_read(), devzero_write(), devzero_poll()
* syslog/syslog_channel.c: syslog_default_write()
* syslog/syslog_device.c: syslog_dev_flush()
* grp/lib_initgroups.c: initgroups()
* misc/lib_mknod.c: mknod()
* misc/lib_glob.c: ignore_err()
* pthread/pthread_barrierinit.c: pthread_barrier_init()
* pthread/pthread_atfork.c: pthread_atfork()
* semaphore/sem_init.c: nxsem_init()
* stream/lib_nullinstream.c: nullinstream_getc()
* stream/lib_nulloutstream.c: nulloutstream_putc()
* stream/lib_libnoflush.c: lib_noflush()
* stream/lib_libsnoflush.c: lib_snoflush()
* string/lib_strerror.c: strerror()
* time/lib_gettimeofday.c: gettimeofday()
* time/lib_settimeofday.c: settimeofday()
* unistd/lib_pathconf.c: fpathconf(), pathconf()
* unistd/lib_getrusage.c: getrusage()
* unistd/lib_setrlimit.c: setrlimit()
* unistd/lib_getrlimit.c: getrlimit()
* unistd/lib_setpriority.c: setpriority()
2022-07-12 11:42:34 +08:00
Nathan Hartman
849f760b77
Fix various typos
2022-07-08 02:15:54 +08:00
Nathan Hartman
bf91047f33
libc: Fix getrandom() bug: Didn't propagate read error
...
* libs/libc/misc/lib_getrandom.c, in function getrandom():
We were assigning the return value of _NX_READ() to nbytes, a
variable of the unsigned type size_t. Note that _NX_READ() resolves
to either read() or nx_read(), both of which return the signed type
ssize_t to indicate either the number of bytes read successfully
(>= 0) or an error (< 0). Then we were testing for a negative
size_t value, a condition that can never occur. The end result is
that if an error occured in _NX_READ(), it would never be detected
and getrandom() would return some large positive value. This bug is
corrected by assigning the return value of _NX_READ() to a new local
variable, ret, of size ssize_t.
2022-07-01 11:51:53 +08:00
Gustavo Henrique Nihei
470287fe5c
libs: Remove "0x" prefix preceding "%p" specifier on format string
...
The "p" format specifier already prepends the pointer address with
"0x" when printing.
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-06-30 22:08:58 +03:00
Nimish Telang
903a186304
Use builtins for byteswapping
...
Make use of XCHG/BSWAP on x86, REV16 and REV on ARMv6-m and above,
and whatever other optimized instructions on other platforms.
Defines extra CONFIG variables, and removes the unused functions for
endian-swapping. Fixes some oversights in using the macros.
2022-06-29 11:32:59 +08:00
Juha Niskanen
449cf4d076
getrandom: fix comment contradicting code
...
Signed-off-by: Juha Niskanen <juha.niskanen@haltian.com>
2022-06-15 11:18:04 -03:00
Petro Karashchenko
02682af759
getrandom: use _NX_XXXX interface to remove cancelation point for kernel
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-06-13 22:27:19 +08:00
chao.an
644283c8ff
libc/ipc: add ftok(3) support
...
https://man.openbsd.org/ftok.3
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-06-09 18:19:48 +03:00
Xiang Xiao
11c8f3125d
sched/tls: Wrap up_info_size into tls_info_size
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-08 19:07:33 +09:00
Xiang Xiao
2707ba58d2
sched/tls: Shouldn't get tls info directly from sp in kernel space
...
since the stack may switch to the kernel or interrupt stack
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-08 08:56:04 +09:00
Xiang Xiao
f1236da21c
fs: Make the binary(no process) mode as the default
...
POSIX require file system shouldn't enable the \r and \n conversion by default
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-07 20:22:26 +03:00
Xiang Xiao
df0e9da1ba
libc/stdio: Support 'e'(O_CLOEXEC) in lib_mode2oflags
...
follow BSD and Linux convention:
https://man.openbsd.org/fopen
https://www.man7.org/linux/man-pages/man3/fopen.3.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-07 20:22:26 +03:00
Xiang Xiao
d8aa41de7b
libc/stdio: Add FLAG_KEEP to avoid the duplication of (O_BINARY | O_EXCL)
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-07 20:22:26 +03:00
Xiang Xiao
49834c9151
libc/stdio: Check 'x' instead 'X' in lib_mode2oflags
...
follow BSD and Linux convention:
https://man.openbsd.org/fopen
https://www.man7.org/linux/man-pages/man3/fopen.3.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-07 20:22:26 +03:00
Xiang Xiao
3357b0b15f
libc/stdio: Remove the unused flags(MODE_[PLUS|B|X|T) in lib_mode2oflags
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-07 20:22:26 +03:00
Xiang Xiao
5b165a2294
libc/stdio: Generate the dummy atexit and on_exit
...
since the compiler may generate the code call atexit automatically
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-07 20:14:34 +03:00
anjiahao
e0c3bf64a0
libc:Optimize the behavior of fwrite
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-06-07 22:28:00 +08:00
zhuyanlin
3455002ffd
libc:xtensa:arch_memmove: fix warning
...
warning: 'SIM_CHECKS_ALIGNMENT' macro redefined
[-Wmacro-redefined] #define SIM_CHECKS_ALIGNMENT 1
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2022-06-07 11:09:57 +03:00
Xiang Xiao
3e32b605fe
libc/tls: Make tls_get_info as the pulibc function instead up_tls_info
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-03 23:56:50 +03:00
Xiang Xiao
bd76e69f8d
tls: Merge tls_xxx into pthread_keyxxx
...
it's always better to provide the standard api directly
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-03 23:56:50 +03:00
Xiang Xiao
c19d37adf0
libc/wchar: Call mbsnrtowcs in mbrtowc to handle the partial sequence correctly
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-03 22:25:49 +03:00
Xiang Xiao
4c34075d10
libc/wchar: Remove the unnecessary cast
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-03 22:25:49 +03:00
Xiang Xiao
406e1effed
libc: Always compile ___cxa_atexit
...
since libsupc++ depends on it unconditionally
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-02 10:54:23 +03:00
Xiang Xiao
1a3e57fe86
libc: Remove weak_function from __aeabi_atexit
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-06-02 10:54:23 +03:00
Xiang Xiao
88fd6210f6
libc/wchar: Fix the minor style issue
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-31 07:59:34 +09:00
anjiahao
b88a8cf39f
use rmutex inside of all repeated implementation
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-05-30 19:43:48 +08:00
Ville Juven
a54c3d13f9
sched: Remove SCHED_ATEXIT / SCHED_ONEXIT
...
Remove the kernel side implementations altogether. These will be
replaced by user land implementations.
2022-05-25 15:28:43 +08:00
Ville Juven
622677d4a1
libc: Implement exit, atexit, on_exit and cxa_exit on the user side
...
For CONFIG_BUILD_KERNEL using the sched/task/task_exithook implementation
will just not work. It calls user code with kernel privileges which is
a bit of a security issue.
2022-05-25 15:28:43 +08:00
Abdelatif Guettouche
4896623be2
build: Fix dependencies of kernel targets.
...
Targets build during the kernel phase did not have their dependencies
specified and thus they were not rebuilt after their dependencies have
changed, for example by changing options in menuconfig.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2022-05-24 10:45:39 +08:00
Xiang Xiao
ba6ee2a407
pthread/spinlock: Call up_testsest directly in the flat build
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-20 09:51:53 -03:00
Xiang Xiao
b39d70fe25
libxxmini: Fix error: use of undeclared identifier 'nullptr'
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-19 23:23:01 +03:00
zhuyanlin
1c977e97d2
pthread_mutexinit: fix deadcode in pthread_mutexinit
...
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2022-05-16 10:20:52 +03:00
Xiang Xiao
51cf7ba05a
Remove FAR from arm/risc-v/xtensa/sim/x86
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-15 13:55:58 +03:00
Xiang Xiao
f7f8a21486
libs: Move aeabi_atexit from libxx/ to libc/machine/arm/
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-13 00:13:03 +03:00
Ville Juven
fb1c1bfe6c
libc: Rename lib_Exit lib__Exit
...
Naming collision with lib_exit on some systems
2022-05-12 14:24:18 +03:00
Masayuki Ishikawa
5c3d6bba6d
libs: risc-v: Add R_RISCV_JAL support to arch_elf.c
...
Summary:
- This commit adds R_RISCV_JAL support to arch_elf.c
- The code only checks the immediate value but does not relocate it
because it is done by the compiler.
Impact:
- None
Testing:
- Tested with rv-virt:knsh64 (not merged yet)
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-05-12 10:36:03 +08:00
zhuyanlin
38f8032e31
libc:xtensa: move syscall to swint call
...
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2022-05-11 10:48:53 +02:00
Juha Niskanen
a17bfec43d
libc/string: simplify strrchr
...
Do not call strlen() here. Old implementation iterated
over string twice, if searched for position was at the
beginning. This commit changes strrchr() to scan string
only once, regardless of input.
Signed-off-by: Juha Niskanen <juha.niskanen@haltian.com>
2022-05-10 23:29:23 +08:00
Xiang Xiao
4ae7f4c1f6
libs: Move libxx_impure.cxx from libs/libxx/ to libs/libc/misc/
...
to fix the gcov link error:
arm-none-eabi-ld: /home/xiaoxiang/vela/prebuilts/gcc/linux/arm/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7e-m/nofp/libgcov.a(_gcov.o): in function `gcov_error_exit':
libgcov-driver.c:(.text+0x7c): undefined reference to `_impure_ptr'
arm-none-eabi-ld: /home/xiaoxiang/vela/prebuilts/gcc/linux/arm/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7e-m/nofp/libgcov.a(_gcov.o): in function `get_gcov_error_file':
libgcov-driver.c:(.text+0x1e0): undefined reference to `_impure_ptr'
arm-none-eabi-ld: /home/xiaoxiang/vela/prebuilts/gcc/linux/arm/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v7e-m/nofp/libgcov.a(_gcov.o): in function `gcov_exit_open_gcda_file.isra.0':
libgcov-driver.c:(.text+0x660): undefined reference to `_impure_ptr'
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-06 14:43:57 -03:00
Xiang Xiao
1e0f3ba4da
libc: Remove C99_BOOL8 from libs/libxx/Kconfig
...
since it can be detected automatically by __STDC_VERSION__
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-05 16:23:32 -03:00
Xiang Xiao
577f301a2c
libc: Move cxx_initialize.c from libc/sched/ to libc/misc
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-04 08:58:43 +02:00
Xiang Xiao
b9eff677fe
libc: Simplify the c++ initialization
...
1.Remove CXX_INITIALIZE_MACHO and CXX_INITIALIZE_SINIT
2.Merge cxx_initialize_sinit.c and cxx_initialize_macho.c into cxx_initialize.c
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-04 08:58:43 +02:00
Xiang Xiao
c1082f04d3
libxx: Make HAVE_CXXINITIALIZE workable even HAVE_CXX isn't enabled
...
since this infrastructure is also used in no c++ case(e.g. gcov)
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-04 08:58:43 +02:00
Xiang Xiao
4a03cab6f9
libc: Remove the redundant seek in writev
...
since the file position isn't changed if write return fail
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-05-01 10:07:36 +03:00
Xiang Xiao
c1e5ba4602
libxx: Always build libcxx with -std=c++17
...
since the implementation of barrier require
the aligned new which is defined in C++ 17
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-29 21:08:14 -03:00
wangbowen6
dcb440a4d9
libc/arch_atomic: add FAR to pointers.
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-04-29 15:06:11 +08:00
wangbowen6
ea164f28b8
libc/arch_atomic: add gcc legacy __sync buitins support.
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-04-29 15:06:11 +08:00
YAMAMOTO Takashi
ded4fd33c1
Implement preadv and pwritev
2022-04-28 13:40:25 +08:00
YAMAMOTO Takashi
d832df88a5
libc.csv: sort
2022-04-28 13:40:25 +08:00
wangbowen6
cbab540169
arm/arch_setjmp.S: armv6m support setjmp, longjmp
...
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-04-27 23:21:03 +08:00
Xiang Xiao
f4d5a23571
libc/fixedmatch: Avoid "divide by zero" error
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-23 20:15:31 +03:00
Petro Karashchenko
8f7af29d74
libs/libc/string: unify implementation across the functions
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-04-23 23:58:54 +08:00
Oki Minabe
185b1cb1b7
libc/string: strcmp/strncmp cast unsigned char
...
Summary:
- Cast to unsigned char for strcmp and strncmp
- strcmp and strncmp are described following by opengroup.org
The sign of a non-zero return value shall be determined by the sign
of the difference between the values of the first pair of bytes
(both interpreted as type unsigned char) that differ in the strings
being compared.
https://pubs.opengroup.org/onlinepubs/9699919799/functions/strcmp.html
https://pubs.opengroup.org/onlinepubs/9699919799/functions/strncmp.html
Impact:
- strcmp and strncmp return value
Testing:
- ostest on sabre-6quad:smp w/ qemu
Signed-off-by: Oki Minabe <minabe.oki@gmail.com>
2022-04-23 16:11:00 +03:00
Xiang Xiao
69b5799b74
libc: Fix typo error in execle
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-22 12:23:09 +03:00
Xiang Xiao
55b5561fdb
sched/task: Implement execle and execve
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-22 10:40:31 +03:00
Alin Jerpelea
148c4903e3
LICENSE: document missing libc files
...
add missing files to the LICENSE file.
Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-04-20 21:05:45 +08:00
Xiang Xiao
5cb82dfcfb
libc/blkoutstream: Minor style fix
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-18 19:21:22 +03:00
chao.an
889a3bf7fc
libc/blockstream: add block out stream backend
...
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-18 19:21:22 +03:00
Xiang Xiao
96ff41d5b2
libc: Don't duplicate string in chdir and lib_restoredir
...
since the new layout doesn't reallocate the unchanged environ variable anymore
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-18 10:36:36 +03:00
Xiang Xiao
ef1a98dd00
Remove the unneeded void cast
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-17 23:32:05 +03:00
anjiahao
a66e8f20ee
libc/string:add LICENSE info
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-14 21:46:12 +08:00
haopengxiang
fa9ad9b398
libc/string:delete small to big endian marco
...
avoid byte alignment
Signed-off-by: haopengxiang <haopengxiang@xiaomi.com>
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-14 21:46:12 +08:00
chao.an
c3cefe6da2
libc/string: Use Byte-Shift algorithm for very long needles
...
Reference here:
https://github.com/taleinat/byteshift_strstr
Signed-off-by: chao.an <anchao@xiaomi.com>
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-14 21:46:12 +08:00
anjiahao
e6f77aeb9a
libc/lib_strptime:change code format & add notes
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-13 10:16:42 +08:00
Xiang Xiao
96ea9b71ed
libc/strptime: fix warning unused-value
...
warning: value computed is not used [-Wunused-value]
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-13 10:16:42 +08:00
anjiahao
6d3f14d41d
libc/strptime:_conv_num skip space
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-13 10:16:42 +08:00
liuhaitao
366c25682c
libc/time: add strptime porting support
...
lib_strptime.c copies from android bionic/libc/tzcode.
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-13 10:16:42 +08:00
anjiahao
c843cb8a52
libc/net:use strlcpy instead of strncpy
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-12 21:16:11 +08:00
anjiahao
c30705f5f0
libc/lib_glob:use strlcpy instead of memcpy
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-12 21:15:45 +08:00
anjiahao
49cd445114
lib_localtime:fix unsigned compare with zero
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-12 17:10:14 +08:00
anjiahao
bb6279fe60
libc/lib_localtime:fix deadcode
...
isdst always is false
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-12 01:51:29 +08:00
songlinzhang
8dd5d0d510
netdb/lib_dnsaddserver.c: Do not insert the duplicate DNS address
...
Signed-off-by: songlinzhang <songlinzhang@xiaomi.com>
2022-04-11 20:31:15 +08:00
Jiuzhu Dong
e93100cb4d
lib_lib_vsprintf/backtrace: fix the type issue
...
using 't': For integer types, causes printf to expect
a ptrdiff_t-sized integer argument.
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2022-04-07 12:14:27 +08:00
Xiang Xiao
ae6bfdc9b9
libc: Avoid the compiler generate code call self(memcpy/memmove/memset/memcmp) recursively
...
please reference the similar change done by other libc implementation:
https://reviews.llvm.org/D68028?id=224286
85c2e6110c
4a1f55e92f
82dfae9ab0
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-05 13:25:53 +03:00
Xiang Xiao
34e17ba0ce
libc/string: Fix the minor style issue
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-05 13:25:53 +03:00
Petro Karashchenko
d08fbca679
nuttx: unify FAR attribute usage across the code
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-04-04 21:32:58 +08:00
Xiang Xiao
499c450d36
libc/netdb: Hold dns lock when operating with resolv.conf
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-04 19:48:36 +09:00
Xiang Xiao
cd695cd0d9
libc/netdb: Remove the temporary unlock in dns_foreach_nameserver
...
since netdb support the recursive lock
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-04 19:48:36 +09:00
Xiang Xiao
a8cac59864
libc/netdb: Support the recursive lock
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-04-04 19:48:36 +09:00
YAMAMOTO Takashi
75b1358d8e
modlib_bind.c: Restore "Relocation address out of range" checks
...
Restore the checks which got completely broken by the following change.
```
commit 15142a8b10
Author: anjiahao <anjiahao@xiaomi.com>
Date: Fri Apr 1 16:20:03 2022 +0800
modlib/modlib_bind:fix unsigned_compare with zero
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
```
2022-04-04 09:12:37 +03:00
anjiahao
5b214888aa
Update libs/libc/modlib/modlib_bind.c
...
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-04-02 01:05:22 +08:00
anjiahao
c7badac601
Update libs/libc/modlib/modlib_bind.c
...
u are right
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-04-02 01:05:22 +08:00
anjiahao
15142a8b10
modlib/modlib_bind:fix unsigned_compare with zero
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-02 01:05:22 +08:00
anjiahao
2d499ac86d
lib_chdir:use change ret judgment method
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-01 19:39:33 +03:00
anjiahao
14c5f61e77
libs/libc/lib_err.c:add va_end to vwarn
...
call va_copy,after need call va_end
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-04-01 23:13:25 +08:00
田昕
24bd80eb84
unistd:rename CONFIG_OPEN_MAX to CONFIG_LIBC_OPEN_MAX
...
Signed-off-by: 田昕 <tianxin7@xiaomi.com>
2022-04-01 22:10:51 +08:00
田昕
463a437733
fs and unistd: increase OPEN_MAX by claiming a Kconfig.
...
Signed-off-by: 田昕 <tianxin7@xiaomi.com>
2022-04-01 12:17:47 +03:00
Gustavo Henrique Nihei
0bd436c8db
libcxx: Fix libc++ for archs without conditional load/store support
...
This commit brings a patch already merged to upstream LLVM project:
https://reviews.llvm.org/D118391
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-30 11:19:29 +08:00
Gustavo Henrique Nihei
8a215b60af
libcxx: Add patch for preventing redefinition of PS macro on Xtensa
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-30 11:19:29 +08:00
ligd
a1eb3f66fa
rexec: fix free error in error handing
...
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-03-29 10:09:04 +08:00
Petro Karashchenko
98ba65c422
c89: get rid of designated initializers in common code
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-28 13:39:27 +08:00
Petro Karashchenko
2ac3e3c793
libs/libc/time: update description of strftime
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-28 00:30:53 +08:00
Gustavo Henrique Nihei
2cd1769619
libxx: Add CXX_RTTI for enabling RTTI support for C++ applications
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-03-26 05:56:37 +02:00
Xiang Xiao
de0dd2f569
libc: implement getentropy function
...
specify here:
https://man7.org/linux/man-pages/man3/getentropy.3.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-25 13:48:33 +02:00
Xiang Xiao
0bd93a2a76
libc/uuid: Call getrandom instaed arc4random_buf
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-25 13:48:33 +02:00
Xiang Xiao
c8ea7a95a3
libc: Implement getrandom on top of "/dev/[u]random"
...
https://man7.org/linux/man-pages/man2/getrandom.2.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-25 13:48:33 +02:00
Ville Juven
9288ed85e7
RISC-V: Add/fix implementation for arch_elf.c
...
The jump instruction relocation had an assert that tests for jumps with
an offset of 0. This makes it so that a while(1); statement causes an
assert because the jump instruction points to the same address, which
is perfectly legal.
Addend was not handled correctly in several reloc types.
Add ADD32/64 + SUB32/64 relocations, for some reason the compiler
I use likes to add them.
2022-03-23 17:56:54 +08:00
Xiang Xiao
0fcb4575bb
sched/dumpstack: Print "backtrace:" only in the first iteration
...
to avoid the same label print multiple time in one dumpstack
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-23 07:26:19 +09:00
Petro Karashchenko
68902d8732
pid_t: unify usage of special task IDs
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-03-22 21:22:32 +08:00
Xiang Xiao
6b8274fbd8
libc: Change the return type of strerror from "const char *" to "char *"
...
to follow up the spec here:
https://pubs.opengroup.org/onlinepubs/9699919799/functions/strerror.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-20 23:02:50 +02:00
chao.an
316797a7f6
libc/err: fix unpaired va_end()
...
each invocation of va_start() must be matched by a corresponding
invocation of va_end() in the same function
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-03-19 10:13:23 +02:00
chao.an
484b930fd1
netdb/getaddrinfo: fix NULL pointer reference
...
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-03-18 20:11:54 +02:00
chao.an
0f7ccf0c08
netdb/getaddrinfo: fix the compile warning
...
netdb/lib_getaddrinfo.c: In function ‘alloc_ai’:
netdb/lib_getaddrinfo.c:80:9: warning: ‘strncpy’ specified bound 108 equals destination size [-Wstringop-truncation]
80 | strncpy(ai->sa.sun.sun_path, addr, sizeof(ai->sa.sun.sun_path));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
netdb/lib_getaddrinfo.c: In function ‘alloc_ai’:
netdb/lib_getaddrinfo.c:103:9: warning: ‘strncpy’ specified bound 16 equals destination size [-Wstringop-truncation]
103 | strncpy(ai->sa.srp.rp_cpu, addr, sizeof(ai->sa.srp.rp_cpu));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-03-19 00:34:26 +08:00
Xiang Xiao
eea014efb7
Fix error: conflicting types for built-in function 'execl'; expected 'int(const char *, const char *, ...)
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-18 16:38:01 +02:00
Xiang Xiao
8f4421a79e
Fix warning: 'argnumber' may be used uninitialized in this function
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-18 12:43:17 +02:00
zhuyanlin
5665b7a585
arch:lib_atomic: remove and fix gcc warning declaration-mismatch
...
Remove GCC ignored warning and fix
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2022-03-18 13:35:42 +08:00
songlinzhang
e2114378b9
Add dn resolution function
...
Signed-off-by: songlinzhang <songlinzhang@xiaomi.com>
2022-03-17 09:37:15 +02:00
Xiang Xiao
be2f688cd9
Fix net/lib_nametoindex.c:58:7: error: 'strncpy' specified bound 16 equals destination size
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-10 19:46:01 +02:00
Huang Qi
69cfe8d626
arch/arm: Support setjmp/longjmp for all socs
...
After check the official specification of ARM ISA
and Thumb ISA, the arch_setjmp_thumb.S are written
by arm unified assembly language,
so it easy to make it works for ARM and thumb ISA.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-03-09 17:13:21 +02:00
chao.an
82f90e4c33
libs/vsprintf: fix the type issue
...
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-03-09 10:16:54 +02:00
Huang Qi
c6e636a871
arch/risc-v: Save/Load float register in setjmp
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-03-09 10:15:54 +02:00
Xiang Xiao
01517b2ebe
libc/gettext: Support the plural format
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-08 15:57:25 -03:00
Xu Xingliang
f38783f4b5
libc/locale: check if mmap failed before proceeding.
...
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2022-03-08 15:57:25 -03:00
Xiang Xiao
0e12bf167b
libc/stdio: Make %p[V|S|s] work with CONFIG_LIBC_NUMBERED_ARGS
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-08 11:33:54 -03:00
Xiang Xiao
a2e9e83956
libc/stdio: Don't fetch width/prec modifier in parser phase
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-08 11:33:54 -03:00
Xiang Xiao
428ce93ee5
libc/stdio: Skip fetch double argument if !CONFIG_LIBC_FLOATINGPOINT && CONFIG_LIBC_NUMBERED_ARGS
...
since the argument is already fetched by lib_vsprintf in this case
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-08 11:33:54 -03:00
Xiang Xiao
0c01f0ce5a
libc/stdio: Add _s suffix for struct arg in lib_libvsprintf.c
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-08 11:33:54 -03:00
Huang Qi
cfff115f21
arm: Move setjmp to common place
...
Since some Cortex A core supports thumb mode also,
thus they can share same implementation.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-03-08 21:00:29 +08:00
Alin Jerpelea
c58ac94450
libs: libc: lib_ubsqrt: migrate license to Apache
...
Haltian has submitted the SGA as a result can migrate the licenses
to Apache
Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2022-03-02 18:14:36 +08:00
Xiang Xiao
4a16cf71f9
Fix -Werror=nonnull-compare and -Werror=format-truncation=
...
Error: module/mod_insmod.c:203:3: error: 'strncpy' specified bound 16 equals destination size [-Werror=stringop-truncation]
203 | strncpy(modp->modname, modname, MODLIB_NAMEMAX);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wqueue/kwork_thread.c: In function 'work_start_lowpri':
Error: wqueue/kwork_thread.c:212:22: error: '%lx' directive output may be truncated writing between 1 and 16 bytes into a region of size 14 [-Werror=format-truncation=]
212 | snprintf(args, 16, "0x%" PRIxPTR, (uintptr_t)wqueue);
local/local_sockif.c: In function 'local_getsockname':
Error: local/local_sockif.c:392:11: error: 'strncpy' specified bound depends on the length of the source argument [-Werror=stringop-overflow=]
392 | strncpy(unaddr->sun_path, conn->lc_path, namelen);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
chip/esp32_wifi_utils.c: In function 'esp_wifi_scan_event_parse':
Error: chip/esp32_wifi_utils.c:373:37: error: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to dereference it? [-Werror=sizeof-pointer-memaccess]
memset(ap_list_buffer, 0x0, sizeof(ap_list_buffer));
^
stdio/lib_fputs.c: In function 'fputs':
Error: stdio/lib_fputs.c:99:9: error: nonnull argument 's' compared to NULL [-Werror=nonnull-compare]
if (s == NULL || stream == NULL)
^
Error: stdio/lib_fputs.c:99:27: error: nonnull argument 'stream' compared to NULL [-Werror=nonnull-compare]
if (s == NULL || stream == NULL)
^
stdio/lib_vfprintf.c: In function 'vfprintf':
Error: stdio/lib_vfprintf.c:40:6: error: nonnull argument 'stream' compared to NULL [-Werror=nonnull-compare]
if (stream)
^
string/lib_strdup.c: In function 'strdup':
Error: string/lib_strdup.c:39:6: error: nonnull argument 's' compared to NULL [-Werror=nonnull-compare]
if (s)
^
string/lib_strndup.c: In function 'strndup':
Error: string/lib_strndup.c:56:6: error: nonnull argument 's' compared to NULL [-Werror=nonnull-compare]
if (s)
^
string/lib_strpbrk.c: In function 'strpbrk':
Error: string/lib_strpbrk.c:39:7: error: nonnull argument 'str' compared to NULL [-Werror=nonnull-compare]
if (!str || !charset)
^~~~
Error: string/lib_strpbrk.c:39:15: error: nonnull argument 'charset' compared to NULL [-Werror=nonnull-compare]
if (!str || !charset)
^~~~~~~~
string/lib_strrchr.c: In function 'strrchr':
Error: string/lib_strrchr.c:40:6: error: nonnull argument 's' compared to NULL [-Werror=nonnull-compare]
if (s)
^
Error: time/lib_asctimer.c:73:50: error: '%d' directive output may be truncated writing between 1 and 11 bytes into a region of size between 0 and 12 [-Werror=format-truncation=]
snprintf(buf, 26, "%.3s %.3s%3d %.2d:%.2d:%.2d %d\n",
^~
time/lib_asctimer.c:73:21: note: directive argument in the range [-2147481748, 2147483647]
snprintf(buf, 26, "%.3s %.3s%3d %.2d:%.2d:%.2d %d\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
time/lib_asctimer.c:73:3: note: 'snprintf' output between 17 and 68 bytes into a destination of size 26
snprintf(buf, 26, "%.3s %.3s%3d %.2d:%.2d:%.2d %d\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
g_wday_name[tp->tm_wday], g_mon_name[tp->tm_mon],
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tp->tm_mday, tp->tm_hour, tp->tm_min, tp->tm_sec,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1900 + tp->tm_year);
~~~~~~~~~~~~~~~~~~~
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-02 15:55:38 +08:00
Xiang Xiao
da954956e7
Simplify DEFAULT_SMALL usage in Kconfig
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-03-01 03:15:01 +08:00
Oki Minabe
fbf05db906
fix up_tls_info define for BUILD_KERNEL
...
Summary:
- In case of BUILD_KERNEL, NuttX uses USR mode sp and SVC mode sp.
- The kernel runs on SVC mode sp.
- While the kernel is running, up_getsp() cannot get the TLS address.
- The kernel requires tls_get_info() function.
- For the user land, up_getsp() can be used.
- tls_getinfo.c is always compiled and tls_get_info() function is
filtered by macros in the tls_getinfo.c.
Impact:
BUILD_KERNEL
Testing:
test program on custom Cortex-A9 board (BUILD_KERNEL)
ostest on sabre-6quad:smp (QEMU, BUILD_FLAT)
Signed-off-by: Oki Minabe <minabe.oki@gmail.com>
2022-02-28 01:12:58 +08:00
Masayuki Ishikawa
de95a8550f
arch, board: Add thumb support to i.MX6
...
Summary:
- This commit adds thumb support to i.MX6
- Also, applies the same coding style to arch_elf.c
Impact:
- i.MX6 only
Testing:
- Tested with sabre-6quad:smp (QEMU, Dev board)
- Tested with sabre-6quad:netnsh (QEMU)
- Tested with sabre-6quad:netknsh (QEMU, not merged yet)
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-02-25 10:51:12 +08:00
Masayuki Ishikawa
11731125ef
libs: armv7-a: Add thumb support to arch_elf.c
...
Summary:
- This commit adds thumb support to arch_elf.c
Impact:
- None
Testing:
- Tested with sabre-6quad:netknsh (QEMU, not merged yet)
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2022-02-25 10:51:12 +08:00
zhuyanlin
1aedf30f38
libc:machine:xtensa: fix warning
...
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2022-02-24 22:13:46 +08:00
Huang Qi
e516c6247e
sched: Implement task local storage
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-02-23 22:05:02 +08:00
Huang Qi
18227cbeff
libc/tls: Supports up to 64 elements
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-02-23 22:05:02 +08:00
Xiang Xiao
f1ed349dd9
sched/clock: Remove CLOCK_MONOTONIC option from Kconfig
...
here is the reason:
1.clock_systime_timespec(core function) always exist regardless the setting
2.CLOCK_MONOTONIC is a foundamental clock type required by many places
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-23 01:21:26 +08:00
Petro Karashchenko
9b02a91c72
libc/sched/task_setcanceltype: fix function name in comment
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-02-21 20:32:49 +08:00
Xiang Xiao
928d52f315
libc/machine: Implement ARM aeabi_xxx API called by clang
...
specified here:
https://developer.arm.com/documentation/ihi0043/latest
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-21 09:29:18 +01:00
Xiang Xiao
1d1bdd85a3
Remove the double blank line from source files
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-20 20:10:14 +01:00
Huang Qi
f452dd7ab4
sched: Mark pthread as non-cancelable to avoid additional calls to pthread_exit()
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-02-20 15:36:07 +01:00
raiden00pl
4e27f4a1d2
libdsp: port lib_observer.c to b16
2022-02-20 21:58:10 +08:00
raiden00pl
7126b829af
libdsp/lib_observer.c: cosmetics
2022-02-20 21:58:10 +08:00
raiden00pl
1366e14192
libdsp: initialize flux_link in params, remove flux_link from pmsm_phy_params
2022-02-20 21:58:10 +08:00
raiden00pl
ca4790c429
libdsp: add one_by_p to motor_phy_params
2022-02-20 21:58:10 +08:00
chao.an
4824ea68a9
libs/libnx: handle the bad message correctly
...
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-02-17 13:40:11 +01:00
Peter Kalbus
6abdf73535
sim: Initial support on MacOS M1 and Linux AARCH64 based hosts.
2022-02-17 09:35:09 +08:00
Oki Minabe
c1ea37742b
fix arm FPSCR typos in comments.
2022-02-17 01:08:11 +08:00
YAMAMOTO Takashi
1d89d9ae4b
libc.csv: Add pthread_setname_np and pthread_getname_np
2022-02-16 15:09:14 +08:00
Xiang Xiao
5f67662c63
libc/sim: Rename arch_setjmp[64].S to arch_setjmp_x86[_64].S
...
to follow other arch/x86 arch/x86_64 convention
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-16 12:23:16 +08:00
Mateusz Szafoni
5f50547ced
libdsp: cosmetics changes from code review
...
Co-authored-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-02-16 03:20:20 +08:00
raiden00pl
31ffa6d576
libdsp/lib_observer.c: remove dir argument from speed observers
...
We can automatically detect the direction of movement from angle diff
2022-02-16 03:20:20 +08:00
raiden00pl
01cbe9133e
libdsp/lib_observer.c: update some comments
...
The angle observer always refer to a motor electrical angle,
while the speed observer can be applied to a motor electrical speed or a motor mechanical speed.
2022-02-16 03:20:20 +08:00
raiden00pl
26f1be27dd
libdsp/lib_observer.c: separate angle observer from speed observer
...
They can be used completely independently, so they should'n be coupled.
For example, a sensored motor controller in speed control mode doesn't need an angle estimator.
2022-02-16 03:20:20 +08:00
zouboan
2391e4bd71
Update libs/libdsp/lib_observer.c
...
Co-authored-by: Mateusz Szafoni <raiden00pl@gmail.com>
2022-02-14 10:47:15 -03:00
zouboan
132f27a91a
lib_observer: add nolinear fluxlink observer
2022-02-14 10:47:15 -03:00
Xiang Xiao
47e38eb70f
binfmt: Decouple builtin from binfs file system
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-14 09:35:35 -03:00
Xiang Xiao
34baf47307
libc: posix_openpty should use the absolute path("dev/ptmx")
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-14 08:43:05 +09:00
Zeng Zhaoxiu
5bf7c185af
semphore: release all semphores' holder that the task held when exit
...
Add a list in TCB to track all semphores the task held, so we
can release all holders when exit, so nxsched_verify_tcb
is unnecessary.
Signed-off-by: Zeng Zhaoxiu <walker.zeng@transtekcorp.com>
2022-02-13 03:20:51 +08:00
anjiahao
ce3c604f48
libc/chdir:"PWD" should save absolute path
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-02-11 13:05:20 +01:00
Huang Qi
8bf7f94d39
pthread: Call cleanup callback while asyncrhonous cancel
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-02-09 21:21:43 +08:00
Huang Qi
c0a0de97ce
Revert "libc: Call pthread_exit in user-space by up_pthread_exit"
...
This reverts commit f4a0b7aedd
.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-02-09 21:21:43 +08:00
Huang Qi
63aa11ca11
libc/spawn: Fix typo in comments
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-02-09 01:39:45 +08:00
Xiang Xiao
4ee5ff81dd
pthread: Add len argument to pthread_getname_np
...
follow the spec:
https://man7.org/linux/man-pages/man3/pthread_setname_np.3.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-07 08:19:17 +01:00
Xiang Xiao
0ff29e8f10
libc/stdlib: Compile lib_openpty.c without checking CONFIG_SERIAL_TERMIOS
...
follow up the following change:
commit 4262b09cbf
Author: Xiang Xiao <xiaoxiang@xiaomi.com>
Date: Fri Dec 17 02:58:49 2021 +0800
libc: Implement terminal api regardless of CONFIG_SERIAL_TERMIOS setting
since many functions aren't related to termios directly
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-03 22:51:28 +01:00
Xiang Xiao
57c3fce583
libc: Implement posix_openpt
...
specify here:
https://pubs.opengroup.org/onlinepubs/009695399/functions/posix_openpt.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-02-03 11:02:31 -03:00
YAMAMOTO Takashi
021b1a6bfb
libs/libc/machine/sim/arch_elf64.c: Implement R_X86_64_PC64
...
This relocation type is often found in eh_frame with -mcmodel=large
2022-01-31 11:38:59 +08:00
YAMAMOTO Takashi
794df92fc9
libs/libc/libc.csv: Add feof
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
82fdba5258
libs/libc/libc.csv: Add truncate
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
182575d240
libs/libc/libc.csv: Add localtime and ctime
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
0db6ac28d8
libs/libc/libc.csv: Add atoi and friends
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
4b183b93cf
libs/libc/libc.csv: Add mktemp and its friends
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
113992c037
libs/libc/libc.csv: Add gettimeofday
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
5ebfb70427
libs/libc/libc.csv: Add pthread_cond_timedwait
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
741a1d2149
libs/libc/libc.csv: Add pthread_create
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
bbfd0667fc
libs/libc/libc.csv: Add uname
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
ebbfa034c7
libs/libc/libc.csv: Add shutdown
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
a06cf25ab6
libs/libc/libc.csv: Add getaddrinfo and friends
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
1b7cb3ef63
libs/libc/libc.csv: Add dlfcn functions
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
f5fb4d4d98
libs/libc/libc.csv: Add strtoumax and strtoimax
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
0b8464419d
libs/libc/libc.csv: Add ctype functions
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
ead9bf6481
libs/libc/libc.csv: Add ferror
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
c22e8c5427
libs/libc/libc.csv: Add rewind
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
c46bae4a4f
libs/libc/libc.csv: Add _assert
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
26b077080b
libs/libc/libc.csv: Add __stack_chk_fail
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
b9e73ed8ba
libs/libc/libc.csv: Add mallinfo and malloc_size
2022-01-29 01:04:23 +08:00
YAMAMOTO Takashi
dad4a7f8f7
symtab_findbyvalue: just retun NULL for NULL symtab
2022-01-27 10:23:37 +01:00
YAMAMOTO Takashi
0edb290951
symtab_findbyname: just retun NULL for NULL symtab
...
The condition is not fatal at all.
It's better to let the caller handle the failure.
2022-01-27 10:23:37 +01:00
zhuyanlin
dde241f306
libxx:uclibxx: add patch use overload constructor of filebuf & ostream
...
overload constructor of filebuf & ostream in uclibxx
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2022-01-24 23:26:59 +08:00
zouboan
a310b0952f
bug patch for frexpf function
2022-01-21 13:37:37 -03:00
Xiang Xiao
77792a1598
sched: Define CONFIG_SMP_NCPUS to 1 in no SMP case
...
to simplify the SMP related code logic
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-01-20 23:21:21 +08:00
Xiang Xiao
a9e4c6ace1
libc: backtrace_malloc change sprintf to snprintf
...
since snprintf can handle NULL pointer but sprintf can't.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-01-20 14:33:29 +01:00
Juha Niskanen
2b63b811e0
libs/libc/misc/lib_execinfo.c: fix bad memory access
...
Signed-off-by: Juha Niskanen <juha.niskanen@haltian.com>
2022-01-20 18:58:40 +08:00
YAMAMOTO Takashi
a3c96a520f
task_startup: Implement cxx_initialize for sim/macOS
2022-01-20 01:16:56 +08:00
Petro Karashchenko
9551de7115
net: use HTONS, NTOHS, HTONL, NTOHL macro in kernel code
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-01-18 10:59:47 +01:00
zouboan
74aeb5d0c5
port nuttx to sparc-v8 commit
...
includes following parts:
add support of sparc in arch/Kconfig
add support of sparc in boards/Kconfig
add sparc dir in arch, add sparc dir in boards
add support of sparc in libs/libc/machine
modify all the coding style problem about saprc
2022-01-17 09:09:29 -03:00
Petro Karashchenko
8d3bf05fd2
include: fix double include pre-processor guards
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-01-16 11:11:14 -03:00
buyuer
59c9620842
libcxx-mini: operator new will assert when alloc failed.
...
Signed-off-by: buyuer <dingddding@163.com>
2022-01-11 10:49:44 +01:00
Petro Karashchenko
2447b7bd9a
pthread: restore pthread mutex default protocol POSIX compatibility
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-01-11 01:55:12 +08:00
Petro Karashchenko
e7f9c7af21
typos: fix typos in Kconfig files
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-01-08 06:46:26 -03:00
chao.an
8c35d31808
Kconfig: Remove CONFIG_ prefix from config definition
...
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-01-07 13:16:18 +08:00
anjiahao
9aa69168e4
libc/pthread:pthread_barrierinit sem use pri_none
...
barrier is used protect resources. don't lock
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2022-01-05 20:21:05 +08:00
Petro Karashchenko
b859f2750b
libc/math: fix log and logf calculations on ARMv7 (and maybe others)
...
Probably this is a bug of a GCC, but on AMRv7 the code "if (relax_factor > 1)"
generates "bne.n" instruction if "relax_factor" is "int". Few lines above
"relax_factor *= LOG_RELAX_MULTIPLIER;" is done without overflow check hence
at some moment overflow occurs and "relax_factor" becomes a zero and condition
"if (relax_factor > 1)" becomes always evaluated to "true" hence "epsilon"
becomes zero always.
Probably this is not the best way to fix the bug (The best way is to report it
to GCC), but this change allows to get correct behavior of "log" and "logf" for
ARMv7 based MCUs
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2022-01-01 20:38:38 +08:00
Petro Karashchenko
8462b14d4e
libc/math: fix fmod family operation
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2021-12-31 20:51:23 +08:00
Norman Rasmussen
df956b08f2
Ensure that sethostname null terminates the hostname correctly
...
commit e1c306f2dd
added sethostname using
strncpy. This replaces it with strlcpy and uses sizeof() instead of
re-calculating the buffer size.
Rename size argument for get/sethostname to match the implementation
2021-12-30 01:13:22 +08:00
Xiang Xiao
4262b09cbf
libc: Implement terminal api regardless of CONFIG_SERIAL_TERMIOS setting
...
since many functions aren't related to termios directly
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-29 08:11:08 -03:00
Xiang Xiao
86684105f9
serial: Move tcdrain implementation from drivers/serial to libc
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-29 08:11:08 -03:00
Xiang Xiao
dd942f0b04
sched/backtrace: Dump the complete stack regardless the depth
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-29 12:09:54 +08:00
Xiang Xiao
9eecd4c5e2
libc: Prefix the address with 0 to the specified width in sched_dumpstack
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-29 12:09:54 +08:00
chao.an
7f2c5be07a
libs/dumpstack: add support for print symbol name
...
ap> mw -1
[ EMERG] arm_usagefault: PANIC!!! Usage Fault:
[ EMERG] arm_usagefault: IRQ: 6 regs: 0x3c24fa48
[ EMERG] arm_usagefault: BASEPRI: 000000e0 PRIMASK: 00000000 IPSR: 00000006 CONTROL: 00000004
[ EMERG] arm_usagefault: CFSR: 01000000 HFSR: 00000000 DFSR: 00000000 BFAR: 40101000 AFSR: 00000000
[ EMERG] arm_usagefault: Usage Fault Reason:
[ EMERG] arm_usagefault: Unaligned access
[ EMERG] up_assert: Assertion failed at file:armv8-m/arm_usagefault.c line: 113 task: init
[ EMERG] backtrace|10: 0x2c325bde 0x2c319b98 0x2c3261cc 0x2c316b20 0x2c32699c 0x2c303a50 0x2c326072 0x2c3206ea
[ EMERG] backtrace|10: 0x2c3428cc 0x2c33ed14 0x2c342e8e 0x2c34403a 0x2c344ac0 0x2c319b60 0x2c3080ba
[ EMERG] [10][ 0] [<0x2c325bde>] up_backtrace+0xa/0x13c
[ EMERG] [10][ 1] [<0x2c319b98>] sched_dumpstack+0x10/0xc0
[ EMERG] [10][ 2] [<0x2c3261cc>] up_assert+0x48/0x414
[ EMERG] [10][ 3] [<0x2c316b20>] _assert+0x4/0x10
[ EMERG] [10][ 4] [<0x2c32699c>] arm_usagefault+0xa8/0x138
[ EMERG] [10][ 5] [<0x2c303a50>] irq_dispatch+0x1c/0x40
[ EMERG] [10][ 6] [<0x2c326072>] arm_doirq+0x1a/0x2c
[ EMERG] [10][ 7] [<0x2c3206ea>] exception_common+0x4a/0xac
[ EMERG] [10][ 8] [<0x2c3428cc>] cmd_mw+0xec/0x11c
[ EMERG] [10][ 9] [<0x2c33ed14>] nsh_parse_command+0x684/0xcf0
[ EMERG] [10][10] [<0x2c342e8e>] nsh_session+0x92/0x168
[ EMERG] [10][11] [<0x2c34403a>] nsh_consolemain+0x1e/0x38
[ EMERG] [10][12] [<0x2c344ac0>] nsh_main+0x30/0x50
[ EMERG] [10][13] [<0x2c319b60>] nxtask_startup+0x40/0x68
[ EMERG] [10][14] [<0x2c3080ba>] nxtask_start+0x46/0x60
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-12-29 12:09:54 +08:00
Xiang Xiao
20bbdd0997
libc: Add backtrace_symbols[_fd] functions
...
specified here:
https://linux.die.net/man/3/backtrace_symbols
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-29 12:09:37 +08:00
Huang Qi
c2e8c92b25
arch/risc-v: Refine Toolchain.defs
...
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2021-12-28 00:30:10 -06:00
Petro Karashchenko
3ccb657dc2
nuttx: remove space befone newline in logs
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2021-12-27 21:01:19 -06:00
chao.an
e0f7bab13c
libc/symtab: optimize the find speed by bisection
...
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-12-21 20:40:12 -06:00
Xiang Xiao
cc1a1b5781
net: Implement getifaddrs and freeifaddrs
...
specify here:
https://man7.org/linux/man-pages/man3/getifaddrs.3.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-21 11:01:33 -03:00
Juha Niskanen
422ceec99b
Fix typos in comments and Kconfig files
...
Signed-off-by: Juha Niskanen <juha.niskanen@haltian.com>
2021-12-21 03:26:16 -06:00
chao.an
ce1c8413a2
libc/lzfcompress: add lzf compress stream
...
compress stream based on lzf algorithm:
struct lib_rawoutstream_s rawstream;
struct lib_lzfoutstream_s lzfstream;
lib_rawoutstream(&rawstream, fd);
lib_lzfoutstream(&lzfstream, &rawstream);
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-12-20 08:39:33 -06:00
Petro Karashchenko
d445282566
fs/vfs: Add file descriptor based timers support
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2021-12-20 04:00:20 -06:00
Xiang Xiao
187d9e58c9
Remove the unnecessary inclusion of assert.h and string.h from public header files
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-20 10:30:08 +01:00
Petro Karashchenko
67d8a82393
Kconfig: fix non-string default values uniformity
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2021-12-20 00:10:57 +01:00
Xiang Xiao
c562263205
net: Move if_nametoindex and if_indextoname to libc
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-19 10:08:57 -06:00
Xiang Xiao
f9c1117c88
eventfd: Remove the unused and private eventfd_get_minor
...
since it isn't defined by Linux kernel too
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-19 01:41:11 -06:00
Takumi Ando
d0dd2684ce
libc/unistd: getopt: Use argc to end parsing
...
It should end parsing with argc even the argv are remaining
or it may access to invalid address.
Signed-off-by: Takumi Ando <t-ando@advaly.co.jp>
2021-12-15 12:02:59 -06:00
Xiang Xiao
ed1e4ddfa7
libc: Add getprogname function
...
defined here:
https://www.freebsd.org/cgi/man.cgi?query=getprogname&sektion=3
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-15 10:47:56 -06:00
Petro Karashchenko
51a2db6ffc
Kconfig: improve uniformity
...
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2021-12-14 07:32:48 -06:00
Petro Karashchenko
12b3491208
libc/textdomain: Fix error behaviour
...
- textdomain should set errno to ENOMEM in case if it is not
possible to store domainname
- fix buffer overflow in textdomain if domainname is a string
of NAME_MAX length
- improve textdomain error detection in case if domainname
points to non null terminated buffer
Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2021-12-14 05:54:34 -06:00
Xiang Xiao
b869c1ce0e
libc: Move stream implementation from libs/libc/stdio to libs/libc/stream
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-14 00:51:59 -06:00
ligd
5b369c5cec
libs/lbc: remove CHAR_BIT = 16 support
...
For CEVA platform CHAR_BIT is 16, and will do lots of extra work
when use IPC.
We will not support this platform anymore, so remove all the b2c operations.
Signed-off-by: ligd <liguiding1@xiaomi.com>
2021-12-13 11:08:28 -06:00
Xiang Xiao
db6dd623c6
libc/gettextdomain: Fix the typo error
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-13 11:07:27 -06:00
chao.an
d3a07ca26c
libs/printf: add support for print symbol name
...
Show a '%p' thing. A nuttx extension is that the '%p' is followed
by an extra set of alphanumeric characters that are extended format
specifiers.
* - 'S' For symbolic direct pointers (or function descriptors) with offset
* - 's' For symbolic direct pointers (or function descriptors) without offset
printf("%ps %pS\n", ptr, ptr) will print:
module_start module_start+0x0/0x62
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-12-13 08:31:13 -06:00
chao.an
d20bd62e08
libc/allsyms: Load all symbols for debugging
...
let the nuttx print out symbolic crash information and
symbolic stack backtraces. This increases the size of the nuttx
somewhat, as all symbols have to be loaded into the nuttx image.
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-12-13 08:31:13 -06:00
Xiang Xiao
1af8cd4de8
sched: Move argv from tcb_s to task_info_s
...
argv is allocated from stack and then belong to userspace,
so task_info_s is a best location to hold this information.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-11 10:08:53 -06:00
chao.an
0161da4415
sched/dumpstack: raise the stack dump level to emergency
...
since sometimes dumpstack will be used in extreme situations(eg. assert)
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-12-09 00:14:30 -06:00
anjiahao
f9570810c0
libc/misc/err.c:add err.c to libc
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2021-12-07 04:01:27 -08:00
Xiang Xiao
a6eb6df688
libc/getopt: Move struct getopt_s to include/nuttx/tls.h
...
and remove include/nuttx/lib/getopt.h
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-06 06:30:16 -08:00
Xiang Xiao
a0990ee416
arch: Remove the duplicated up_tls_info implementation
...
Define up_tls_info in arch/arch.h directly if the general one isn't suitable
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-05 20:59:53 -06:00
Xiang Xiao
54eabf9616
libc: Add mknod implementation
...
https://pubs.opengroup.org/onlinepubs/007904875/functions/mknod.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-28 23:31:16 +01:00
Xiang Xiao
5da9dbe57a
libc/gets: Remove the unnecessary cast
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-27 16:07:39 -03:00
Xiang Xiao
b5f6dcb523
libc/getdelim: Remove __KERNEL__ check since it shouldn't be called inside kernel
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-27 16:07:39 -03:00
anjiahao
80d32edbe1
libc/str:add strlcat to libc
...
Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2021-11-26 15:24:35 -03:00
Xiang Xiao
c1cb429a98
libc/hex2bin: Handle the line ending(\r, \n and \r\n) dynamically
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-26 11:55:00 -03:00
chao.an
f3b019d1d2
libc/stdoutstream: restore the output method to fputc()
...
keep the default behavior for stdoutstream since the character
needs to flush every output
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-11-24 15:50:33 +09:00
chao.an
e228434cea
libs/libc: add interface to support output stream as buffer style
...
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-11-23 21:00:43 -06:00
Xiang Xiao
e5cf5faa86
libc/psignal: Output the message to STDERR_FILENO instead STDOUT_FILENO
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-22 19:37:12 +01:00
Xiang Xiao
91f616e824
libc/pthread: Implement pthread_atfork
...
fork isn't supported yet, so the dummy implementation is enough.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-22 15:11:48 -03:00
Xiang Xiao
55311ea3df
libc/stdio: Move source files to the right Makefile section
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-19 08:21:27 -03:00
Xiang Xiao
fe94670ca9
lib/stdio: Handle 64bits off_t correctly
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-18 10:06:27 -05:00
Xiang Xiao
bd2327cc2d
libc: Make perror/putchar/getchar/puts work without CONFIG_FILE_STREAM
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-11-18 06:29:09 -08:00
Alin Jerpelea
384e38fc9b
libs: libc: Haltian Ltd: update licenses to Apache
...
Gregory Nutt has submitted the SGA
Haltian Ltd has submitted the SGA
as a result we can migrate the licenses to Apache.
Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-11-15 06:49:32 -06:00
Xiang Xiao
bec1b0bc92
Revert "libc: Implement fesetround & fegetround for arm"
...
Since the toolchain provide the implementation now.
This reverts commit fe992a5b6c
.
2021-11-10 14:35:53 -03:00
ligd
3f94828f6b
netdb: fix access within misaligned address error
...
netdb/lib_dnsquery.c:444:14: runtime error: member access within misaligned address 0xef2f5a1b for type 'struct dns_question_s', which requires 2 byte alignment
0xef2f5a1b: note: pointer points here
63 6f 6d 00 00 01 00 01 c0 0c 00 05 00 01 00 00 00 1c 00 1a 05 6d 75 73 69 63 06 6e 74 65 73 35
^
netdb/lib_dnsquery.c:445:14: runtime error: member access within misaligned address 0xef2f5a1b for type 'struct dns_question_s', which requires 2 byte alignment
0xef2f5a1b: note: pointer points here
63 6f 6d 00 00 01 00 01 c0 0c 00 05 00 01 00 00 00 1c 00 1a 05 6d 75 73 69 63 06 6e 74 65 73 35
^
Signed-off-by: ligd <liguiding1@xiaomi.com>
2021-11-08 21:57:27 -06:00
zhuyanlin
5a4140f020
arch:xtensa: add setjmp xtensa function
...
N/A
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2021-11-06 07:39:27 -05:00
zhuyanlin
cfcff5f570
libc:machine:xtensa:add xtensa libc implement
...
N/A
Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2021-11-06 07:39:27 -05:00
Jukka Laitinen
7e9e8a817d
libs/libc/wqueue/work_usrthread.c: Correct time calculation in work_process
...
This fixes busylooping in work_usrthread, due to incorrect time spec given to sem_timedwait
_SEM_TIMEDWAIT works on absolute time stamps, using CLOCK_REALTIME
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-04 13:19:01 -05:00
Jukka Laitinen
c79d2067c7
Move timespec calculations from sched into libc/sched
...
Allow using these functions also outside sched, where systick
related calculations are performed
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-11-04 13:19:01 -05:00