Commit graph

41 commits

Author SHA1 Message Date
Xiang Xiao
f9f59bd0f8 !apps: drop redundant casts on tv_sec/tv_nsec and fix printf formats
Now that time_t is unconditionally 64-bit (signed int64_t) and the
struct timespec fields tv_sec / tv_nsec are wide enough on their own,
the explicit (uint64_t)/(int64_t)/(int) casts that used to guard the
multiplications and subtractions in *_us / *_ms / *_ns helpers are no
longer needed.  Drop them to keep the timekeeping math readable.

In the same spirit, this commit also normalises the printf-style format
specifiers and casts used to print tv_sec / tv_nsec / tv_usec values.
The prior code was a mix of "%d"/"%u"/"%ld"/"%lu"/"%lld" with matching
(int)/(unsigned long)/(long long) casts; some formats truncated time_t
on 32-bit hosts, others mismatched signedness or width.  Replace all
such cases with the portable POSIX-recommended forms:

  - tv_sec  (time_t,       signed, impl-defined width) -> %jd  + (intmax_t)
  - tv_nsec (long,         signed)                     -> %ld  (no cast)
  - tv_usec (suseconds_t / long)                       -> %ld  (no cast)

Also drop two stale `(FAR const time_t *)&ts.tv_sec` casts that are
unnecessary now that ts.tv_sec is plain time_t.

Arithmetic-cleanup files (existing scope):

  - benchmarks/cyclictest/cyclictest.c:        timediff_us()
  - benchmarks/sd_bench/sd_bench_main.c:       get_time_delta_us()
  - examples/oneshot/oneshot_main.c:           maxus computation
  - examples/watchdog/watchdog_main.c:         current_time_ms (x2)
  - industry/nxmodbus/nxmb_internal.h:         nxmb_util_clock_ms()
  - netutils/ntpclient/ntpclient.c:            timespec2ntp()
  - netutils/ptpd/ptpd.c:                      ptp_adjtime()
  - system/dd/dd_main.c:                       elapsed accounting
  - testing/drivers/drivertest/drivertest_posix_timer.c:
                                               get_timestamp()
  - testing/drivers/sd_stress/sd_stress_main.c:get_time_delta()
  - testing/sched/getprime/getprime_main.c:    elapsed accounting
  - testing/sched/pthread_mutex_perf/pthread_mutex_perf.c:
                                               timespec_avg()

Printf-format-fix files (new in this revision):

  - examples/adjtime/adjtime_main.c
  - examples/charger/charger_main.c
  - examples/netpkt/netpkt_ethercat.c
  - fsutils/mkfatfs/mkfatfs.c
  - graphics/tiff/tiff_initialize.c
  - netutils/ptpd/ptpd.c
  - nshlib/nsh_timcmds.c
  - system/coredump/coredump.c
  - system/ptpd/ptpd_main.c
  - testing/drivers/drivertest/drivertest_oneshot.c
  - testing/mm/kasantest/kasantest.c
  - testing/ostest/semtimed.c
  - testing/sched/pthread_mutex_perf/pthread_mutex_perf.c
  - testing/sched/timerjitter/timerjitter.c
  - testing/testsuites/kernel/time/cases/clock_test_clock01.c
  - testing/testsuites/kernel/time/cases/clock_test_smoke.c

No behavioural change.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2026-05-22 13:38:25 +08:00
Piyush Patle
9d849adfab include/debug.h: Use <nuttx/debug.h> in apps
Replace app-side includes of <debug.h> with <nuttx/debug.h> to use the
header from the NuttX tree explicitly after the header move.

Signed-off-by: Piyush Patle <piyushpatle228@gmail.com>
2026-04-11 10:39:27 -03:00
hongfengchen
c69df55cd0 rexecd: fix type change
Fix cast from pointer to integer of different size to ensure
proper type conversion and avoid compilation warnings.

Signed-off-by: hongfengchen <hongfengchen@xiaomi.com>
2026-01-26 19:32:27 +08:00
hongfengchen
d0e949cb24 testing: add unistd.h and pthread.h headers
Add unistd.h and pthread.h for memorystress_main.c, unistd.h for
dhm.c and cachetest_main.c, and pthread.h for kv_test_019.c to fix
missing declarations.

Signed-off-by: hongfengchen <hongfengchen@xiaomi.com>
2026-01-26 19:32:27 +08:00
tengshuangshuang
5216065fb8 cache_test: fix up_flash_dcache error
Fix flash dcache helper error handling in cache_test to properly
handle errors when flushing data cache operations fail.

Signed-off-by: tengshuangshuang <tengshuangshuang@xiaomi.com>
2026-01-22 19:48:57 +08:00
raiden00pl
5549f66dc1 testing/memtester: fix build error for cmake
fix broken CMakeLists.txt for memtester

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-12-05 17:53:57 +01:00
raiden00pl
39cb6fefda testing/memtester: add memtester.zip to gitignore
add memtester.zip to gitignore

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-12-05 17:53:57 +01:00
raiden00pl
8c5c506e40 testing/cachetest: fix compilation error for arm64
fix compilation error:

cachetest_main.c:37:26: error: format '%u' expects argument of type 'unsigned int', but argument 5 has type 'size_t' {aka 'long unsigned int'} [-Werror=format=]
   37 | #define CACHETEST_PREFIX "CACHE Test: "
      |                          ^~~~~~~~~~~~~~
cachetest_main.c:150:20: note: in expansion of macro 'CACHETEST_PREFIX'
  150 |   syslog(LOG_INFO, CACHETEST_PREFIX "waddr:%p, uncacheble addr start:%p,"
      |                    ^~~~~~~~~~~~~~~~
cachetest_main.c:151:17: note: format string is defined here
  151 |          "size:%u\n", info->waddr,
      |                ~^
      |                 |
      |                 unsigned int
      |                %lu

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-12-05 17:53:57 +01:00
raiden00pl
91a7580303 testing/mm/cachetest/cachetest_main.c: fix codespell error
fix codespell error for cachetest_main.c

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-02 22:33:46 +08:00
raiden00pl
0a906edd81 testing/mm/cachetest/cachetest_main.c: fix compilation error
fix compilation error:

cachetest_main.c: In function ‘cachetest_main’:
cachetest_main.c:240:7: error: implicit declaration of function ‘up_flush_dcache’ [-Wimplicit-function-declaration]
  240 |       up_flush_dcache((uintptr_t)info.waddr, (uintptr_t)info.waddr +

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-11-02 22:33:46 +08:00
wangmingrong1
3f823f9f25 kasantest: -fno-builtin is enabled by default
The strlen function called by kasantest will be optimized by the compiler, and the strlen function implemented in NX will not be called. Adding -fno-builtin can solve the problem.

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2025-07-18 22:42:25 +08:00
raiden00pl
3764ab041a cmake: remove empty strings from FetchContent
remove empty strings from FetchContent to eliminate cmake build warnings like this:

CMake Warning (dev) at /usr/share/cmake/Modules/FetchContent.cmake:1564 (cmake_parse_arguments):
  The BUILD_COMMAND keyword was followed by an empty string or no value at
  all.  Policy CMP0174 is not set, so cmake_parse_arguments() will unset the
  ARG_BUILD_COMMAND variable rather than setting it to an empty string.

Signed-off-by: raiden00pl <raiden00@railab.me>
2025-03-30 14:20:21 +08:00
simbit18
a0dfd187d8 [Kconfig style] Fix Kconfig style
Remove spaces from Kconfig files
Add TABs
Replace help => ---help---
Remove extra TABs

Signed-off-by: simbit18 <simbit18@gmail.com>
2025-02-25 09:27:14 +01:00
tengshuangshuang
077c3461db apps/testing:merge case folder to the new mm folder
1.rename original  mm folder to heaptest and move it to mm folder

2.move the following folders into the new mm folder:
  cachetest, heaptest, iob, kasantest, memstress, memtester, ramtest, stressapptest

Signed-off-by: tengshuangshuang <tengshuangshuang@xiaomi.com>
2025-01-23 18:19:06 +08:00
Alin Jerpelea
068220d3a7 testing: migrate to SPDX identifier
Most tools used for compliance and SBOM generation use SPDX identifiers
This change brings us a step closer to an easy SBOM generation.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2024-12-30 18:02:50 +08:00
chenzihan1
f426265ab2 testing: mm test will be skipped to prevent memory overflow
In the mm test, if the memory requested this time exceeds 3/4 of the remaining memory,
the request will be skipped to avoid insufficient memory.

Signed-off-by: chenzihan1 <chenzihan1@xiaomi.com>
2024-10-17 23:29:41 +08:00
xuxin19
20c0a7243c cmake:port testing applications to CMake build
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
2024-06-29 22:31:03 +08:00
Xuxingliang
facc9ddc63 testing/mm: use unified name for macros
All macros in mm.h start with MM_

Signed-off-by: Xuxingliang <xuxingliang@xiaomi.com>
2023-09-12 22:09:43 +08:00
hujun5
7daeca62b0 testing/mm: add maxsize parameter
Signed-off-by: hujun5 <hujun5@xiaomi.com>
2023-07-26 08:33:09 -07:00
Xiang Xiao
a29d9ea9da fsutils/examples: Include unistd.h explicitly
to get the prototypes or macros are defined in it

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-05 08:46:59 +02:00
ligd
b16eaf9d8e mm: add memory stress test
Signed-off-by: ligd <liguiding1@xiaomi.com>
2022-11-11 22:26:59 +08:00
Fotis Panagiotopoulos
f85a6b6fb9 Added poweroff in fs and mm tests. 2022-11-08 02:52:46 +08:00
wangbowen6
fe28ed0520 mm_main: delete realloc boundary test
It's better to add DEBUGASSERT in mm code to check the unaligned
problem instead add a complex test case.

Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-11-01 19:18:08 +08:00
Xiang Xiao
0dc5e9f469 Replace #include <queue.h> with #include <nuttx/queue.h>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-09-26 08:04:51 +02:00
YAMAMOTO Takashi
fe5b68142e testing/mm: Test more patterns for memalign 2022-04-07 02:51:39 +08:00
YAMAMOTO Takashi
f9a24e3c0a testing/mm: check alignment in do_memaligns 2022-04-07 02:51:39 +08:00
YAMAMOTO Takashi
cc5f73019e testing/mm: Update after the recent changes in nuttx
The following commit changed the typo of SIZEOF_MM_ALLOCNODE
from int to size_t.
```
commit 39eaeefb78f36724adbdc47400d6f60372b68344
Author: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
Date:   Thu Jan 27 12:17:20 2022 +0800

    mm/mm_heap: remove the unnecessary check for memory node size

    Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>

```
2022-04-07 02:51:39 +08:00
wangbowen6
c7b7162d5f testing/mm: add memory boundary realloc test.
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-04-02 18:11:58 +08:00
wangbowen6
963c1f31db testing/mm: repair the memory leak question when realloc failed.
Signed-off-by: wangbowen6 <wangbowen6@xiaomi.com>
2022-03-31 03:16:24 +08:00
Alin Jerpelea
3378b8ef54 testing: ostest: nxstyle fixes
Fixes for errors reported by nxstyle tool

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-06-10 08:49:24 -05:00
Alin Jerpelea
590307e957 testing: update licenses to Apache
Gregory Nutt is has submitted the SGA

Mark Schulte has submitted the ICLA

Ken Pettit has submitted the ICLA

as a result we can migrate the licenses to Apache.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-06-10 08:49:24 -05:00
Alin Jerpelea
ec339bc49a Makefiles: Gregory Nutt: update licenses to Apache
Gregory Nutt is the copyright holder for those files and he has submitted the
SGA as a result we can migrate the licenses to Apache.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-06-07 21:35:33 -05:00
Xiang Xiao
deaa6c5b7b build: Replace $(TOPDIR)/Make.defs with $(APPDIR)/Make.defs
and move NUTTXLIB defintion to the common place

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-07-09 15:17:37 -03:00
YAMAMOTO Takashi
faba0249c1 Include malloc.h instead of stdlib.h for mallinfo()
Adapt to the change in the main repo.

mallinfo is meant to be API compatible with Linux,
where it's provided by malloc.h.

(I think the API actually originated with System V. I don't
remember how it was there though. Anyway, I guess the
compatibility with Linux is more important than System V
these days.)
2020-06-15 07:21:52 -06:00
Xiang Xiao
69f013e74e build: Remve the unnecessary .gitignore
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-23 15:56:35 +01:00
Xiang Xiao
ead498a788 build: Remove the workaround for the inexistence of .config/Make.defs
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-21 17:43:42 +01:00
YAMAMOTO Takashi
e7156be066 Change the defaults of stack size configs to DEFAULT_TASK_STACKSIZE
This commit changes only ones with the default 2048 and
leaves the others.
E.g. this leaves SYSTEM_RAMTEST_STACKSIZE, whose default is 1024.
I guess those need to be inspected one-by-one.
2020-03-27 02:43:11 -05:00
Xiang Xiao
1511403fdf Revert "Don't generate .depend anymore"
This reverts commit cc5ad09caa.
2020-03-22 23:09:40 -05:00
Xiang Xiao
cc5ad09caa
Don't generate .depend anymore 2020-03-22 18:15:21 +00:00
patacongo
7a8790f1b4
apps/testing/mm: Make stacksize configurable (#40)
Make stacksize as well as program name and priority configurable.  The defaults are the same as the previous hardcoded values.

The default stacksize of 2048 bytes is more than enough for most target applications.  However, when running on the simulator, much large stack sizes are needed.
2020-01-30 17:43:04 +01:00
patacongo
ba6377078b
apps/testing/mm: Move from apps/examples/mm (#39) 2020-01-30 17:07:00 +01:00