Commit Graph

41 Commits

Author SHA1 Message Date
yinshengkai
bdc522bad7 trace: move trace_dump to noteram
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-08-11 13:52:12 +08:00
yinshengkai
95b0515c30 trace: unify ftrace and atrace output formats
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-08-11 13:52:12 +08:00
Petro Karashchenko
aed0e2873e apps: fix style issues in code
Add missing FAR and CODE to pointers
Remove FAR for non-pointer variables
Remove extra spaces and align the parameters
Add do {} while(0) wrapper in macro
Use nitems to calculate number of elements in arrays

Signed-off-by: Petro Karashchenko <petro.karashchenko@gmail.com>
2023-06-11 18:47:50 +08:00
Xiang Xiao
134b8b538f Replace all strcat with strlcat
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-05-08 21:35:16 +03:00
yinshengkai
19ba886ec2 trace: remove SCHED_INSTRUMENTATION_HIRES
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-02-23 22:33:14 +08:00
chao an
cf4db3f62d drivers/note: fix build break by note rename change
Regression by:

| commit 4e6041a46c (HEAD, origin/master, origin/HEAD)
| Author: Xiang Xiao <xiaoxiang@xiaomi.com>
| Date:   Tue Feb 14 01:17:13 2023 +0800
|
|     system: Change DRIVER_NOTExxx to DRIVERS_NOTExxx
|
|     follow the kernel side change: https://github.com/apache/nuttx/pull/8531
|
|     Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>

Signed-off-by: chao an <anchao@xiaomi.com>
2023-02-20 16:13:54 +08:00
Xiang Xiao
4e6041a46c system: Change DRIVER_NOTExxx to DRIVERS_NOTExxx
follow the kernel side change: https://github.com/apache/nuttx/pull/8531

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-20 14:30:57 +08:00
yinshengkai
f102f6f405 trace: add trace header when dumping
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-02-08 00:35:17 +08:00
yinshengkai
ecadbbb43c trace: expand NOTE_DUMP_STRING
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2023-02-08 00:34:59 +08:00
Xiang Xiao
77ac0e4838 system/trace: Check NOTERAM_GETTASKNAME existence directly
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-26 11:53:26 +08:00
yinshengkai
595adbcca6 drivers/note: rename /dev/note to /dev/note/ram
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2022-12-15 12:15:53 +08:00
yinshengkai
d9ec9ca868 system/trace: expand dump string
Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
2022-09-27 19:39:22 +08:00
chao.an
725fe76b91 trace: format the usage output
before:
Usage: trace <subcommand>...
Subcommand:
  start [-c][<duration>]          : Start task tracing
  stop                            : Stop task tracing
  dump [-a][-c][<filename>]           : Output the trace result
 [-a] <Android SysTrace>
  mode [{+|-}{o|w|s|a|i|d}...]        : Set task trace options
  switch [+|-] : Configure switch trace filter
  syscall [{+|-}<syscallname>...] : Configure syscall trace filter
  irq [{+|-}<irqnum>...]          : Configure IRQ trace filter
  print [+|-] : Configure dump tnsh>

after:
Usage: trace <subcommand>...
Subcommand:
 start   [-c][<duration>]            : Start task tracing
 stop                                : Stop task tracing
 cmd     [-c] <command> [<args>...]  : Get the trace while running <command>
 dump    [-a][-c][<filename>]        : Output the trace result
                                       [-a] <Android SysTrace>
 mode    [{+|-}{o|w|s|a|i|d}...]     : Set task trace options
 switch  [+|-]                       : Configure switch trace filter
 syscall [{+|-}<syscallname>...]     : Configure syscall trace filter
 irq     [{+|-}<irqnum>...]          : Configure IRQ trace filter
 print   [+|-]                       : Configure dump trace filter

Signed-off-by: chao.an <anchao@xiaomi.com>
2022-05-12 14:55:34 +08:00
chao.an
089c05cbd8 system/trace: correct arg index if command is alreay set
An error occurs when the same command is executed twice

$ trace switch +
$ trace switch +
Usage: trace <subcommand>...
Subcommand:
  start [-c][<duration>]          : Start task tracing
  stop                            : Stop task tracing
  dump [-a][-c][<filename>]           : Output the trace result
 [-a] <Android SysTrace>
  mode [{+|-}{o|w|s|a|i|d}...]        : Set task trace options
  switch [+|-] : Configure switch trace filter
  syscall [{+|-}<syscallname>...] : Configure syscall trace filter
  irq [{+|-}<irqnum>...]          : Configure IRQ trace filter
  print [+|-] : Configure dump tnsh>

Signed-off-by: chao.an <anchao@xiaomi.com>
2022-05-12 14:55:34 +08:00
chao.an
8c1a4994cc system/note: correct unflatten format
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-08 01:38:13 +08:00
chao.an
124c1328a6 sched/note: add support of trace section mark
The implementation of this feature is based on android systrace:

https://source.android.com/devices/tech/debug/ftrace

Application developers are more concerned about the performance of
the specified application section,
added two APIs to implement performance measurement:

void sched_note_begin(FAR const char *str);
void sched_note_end(FAR const char *str);
or
SCHED_NOTE_BEGIN();  /* defined to sched_note_begin(__FUNCTION__) */
SCHED_NOTE_END();    /* defined to sched_note_end(__FUNCTION__) */

Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-03 18:04:28 +08:00
chao.an
f4a41c6ed4 system/trace: fix the irq print compatibility with systrace
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-03 18:04:28 +08:00
chao.an
023971d46c system/trace: add switch priority print to align with ftrace
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-03 18:04:28 +08:00
chao.an
2fd38eb57b system/trace: force flush the output stream
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-03 18:04:28 +08:00
chao.an
7612d2aea8 system/trace: correct preamble header pid
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-03 18:04:28 +08:00
chao.an
90484a33e9 sched/trace: correct the note print format
note print should with Instruction pointer.

e.g:

        trace_printk("hello NuttX");

trace dump:

        hello-6  [000] .... 23080.367994: 0xc044a005: hello NuttX

Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-03 18:04:28 +08:00
chao.an
0dc716d426 sched/note: unify the data format
Signed-off-by: chao.an <anchao@xiaomi.com>
2022-04-03 18:04:28 +08:00
zhuyanlin
e3df21cd4c trace: fix pointer cross the border
Fix pointer cross the border

Signed-off-by: zhuyanlin <zhuyanlin1@xiaomi.com>
2022-03-28 22:17:59 +08:00
zhanghu6
18b5902a3e apps/trace: add switch and dump instrumentation
usage:
    trace switch switch [+|-]
                             Configure switch trace filter

    trace print [+|-]
                             Configure dump trace filter

Signed-off-by: zhanghu6 <zhanghu6@xiaomi.com>
2022-02-24 10:23:50 -03:00
Xiang Xiao
db235f98d8 Rename CONFIG_SMP_NCPUS to CONFIG_NR_CPUS
follow up NuttX side change

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-01-22 00:08:32 +01:00
zhanghu6
1e28c3b9ea trace dump: the note dump module of out keep string output 2021-12-14 11:16:54 -06:00
zhanghu6
a63aef8f02 warning: trace_dump_sched_switch unused because add SCHED_INSTRUMENTATION_SWITCH
https://github.com/apache/incubator-nuttx/pull/4998
note dump: add CONFIG_SCHED_INSTRUMENTATION_SWITCH #4998
2021-12-14 11:16:54 -06:00
zhanghu6
a2c8fa182a trace dump: build error because add CONFIG_SCHED_INSTRUMENTATION_SWITCH in note driver
https://github.com/apache/incubator-nuttx/pull/4998
note dump: add CONFIG_SCHED_INSTRUMENTATION_SWITCH #4998
2021-12-14 11:16:54 -06:00
zhanghu6
cc8dd03b9c trace dump: add string and binary
NOTE_DUMP_STRING
NOTE_DUMP_BINARY

And incubator-nuttx[trace: and sched note dump #4963] is together
2021-12-13 21:22:21 -06:00
Abdelatif Guettouche
7b192f24fe system/trace/trace.c: Condition the creation of "i" and "count"
varialbes with SYSCALL or IRQ instrumentation to avoid a warning.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-11-27 05:48:13 -06:00
Abdelatif Guettouche
c26c4009d9 system/trace/trace_dump.c: Fix typo in a comment (NUL -> NULL).
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-11-27 05:48:13 -06:00
Xiang Xiao
ad3f44bc77 Change match to fnmatch
follow the kernel side change

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-08-02 16:15:57 -03:00
Nakamura, Yuuichi (ITDD)
f6dfd1dbb2 system/trace: Fix trace output for the correct display in Trace Compass 2021-08-01 08:43:24 -07:00
Nakamura, Yuuichi
bfa826d30d system/trace: Fix fprintf format warnings 2021-01-06 10:27:34 +01:00
chao.an
fe915679b1 style/Document: remove unnecessary trailing whitespace
N/A

Signed-off-by: chao.an <anchao@xiaomi.com>
2020-11-28 12:20:10 +01:00
Nakamura, Yuuichi
e6e435572b Add task name recording support for trace command 2020-11-01 19:33:08 -08:00
Nakamura, Yuuichi
954c90b4b5 Add SCHED_INSTRUMENTATION_HIRES support 2020-10-21 02:10:51 +08:00
Nakamura, Yuuichi
ef2758c0c5 Add note_syscall args support 2020-10-21 00:42:53 +08:00
Nakamura, Yuuichi
7588d458e5 Remove trace command description 2020-10-18 00:23:27 +08:00
Nakamura, Yuuichi
007033f295 Fix note_syscall_leave_s to avoid unaligned access 2020-10-17 23:53:30 +08:00
Nakamura, Yuuichi
71ce72a341 Add trace command for task trace 2020-10-15 16:49:11 +08:00