RTEMS  5.0.0
rtems-rfs-trace.h
Go to the documentation of this file.
1 
14 /*
15  * COPYRIGHT (c) 2010 Chris Johns <chrisj@rtems.org>
16  *
17  * The license and distribution terms for this file may be
18  * found in the file LICENSE in this distribution or at
19  * http://www.rtems.org/license/LICENSE.
20  */
21 
22 
23 #if !defined (_RTEMS_RFS_TRACE_H_)
24 #define _RTEMS_RFS_TRACE_H_
25 
26 #include <stddef.h>
27 #include <stdbool.h>
28 #include <stdint.h>
29 #include <stdio.h>
30 
34 #if !defined (RTEMS_RFS_TRACE)
35 #define RTEMS_RFS_TRACE 1
36 #endif
37 
41 typedef uint64_t rtems_rfs_trace_mask;
42 
46 #define RTEMS_RFS_TRACE_ALL (0xffffffffffffffffULL)
47 #define RTEMS_RFS_TRACE_OPEN (1ULL << 0)
48 #define RTEMS_RFS_TRACE_CLOSE (1ULL << 1)
49 #define RTEMS_RFS_TRACE_MUTEX (1ULL << 2)
50 #define RTEMS_RFS_TRACE_BUFFER_OPEN (1ULL << 3)
51 #define RTEMS_RFS_TRACE_BUFFER_CLOSE (1ULL << 4)
52 #define RTEMS_RFS_TRACE_BUFFER_SYNC (1ULL << 5)
53 #define RTEMS_RFS_TRACE_BUFFER_RELEASE (1ULL << 6)
54 #define RTEMS_RFS_TRACE_BUFFER_CHAINS (1ULL << 7)
55 #define RTEMS_RFS_TRACE_BUFFER_HANDLE_REQUEST (1ULL << 8)
56 #define RTEMS_RFS_TRACE_BUFFER_HANDLE_RELEASE (1ULL << 9)
57 #define RTEMS_RFS_TRACE_BUFFER_SETBLKSIZE (1ULL << 10)
58 #define RTEMS_RFS_TRACE_BUFFERS_RELEASE (1ULL << 11)
59 #define RTEMS_RFS_TRACE_BLOCK_FIND (1ULL << 12)
60 #define RTEMS_RFS_TRACE_BLOCK_MAP_GROW (1ULL << 13)
61 #define RTEMS_RFS_TRACE_BLOCK_MAP_SHRINK (1ULL << 14)
62 #define RTEMS_RFS_TRACE_GROUP_OPEN (1ULL << 15)
63 #define RTEMS_RFS_TRACE_GROUP_CLOSE (1ULL << 16)
64 #define RTEMS_RFS_TRACE_GROUP_BITMAPS (1ULL << 17)
65 #define RTEMS_RFS_TRACE_INODE_OPEN (1ULL << 18)
66 #define RTEMS_RFS_TRACE_INODE_CLOSE (1ULL << 19)
67 #define RTEMS_RFS_TRACE_INODE_LOAD (1ULL << 20)
68 #define RTEMS_RFS_TRACE_INODE_UNLOAD (1ULL << 21)
69 #define RTEMS_RFS_TRACE_INODE_CREATE (1ULL << 22)
70 #define RTEMS_RFS_TRACE_INODE_DELETE (1ULL << 23)
71 #define RTEMS_RFS_TRACE_LINK (1ULL << 24)
72 #define RTEMS_RFS_TRACE_UNLINK (1ULL << 25)
73 #define RTEMS_RFS_TRACE_DIR_LOOKUP_INO (1ULL << 26)
74 #define RTEMS_RFS_TRACE_DIR_LOOKUP_INO_CHECK (1ULL << 27)
75 #define RTEMS_RFS_TRACE_DIR_LOOKUP_INO_FOUND (1ULL << 28)
76 #define RTEMS_RFS_TRACE_DIR_ADD_ENTRY (1ULL << 29)
77 #define RTEMS_RFS_TRACE_DIR_DEL_ENTRY (1ULL << 30)
78 #define RTEMS_RFS_TRACE_DIR_READ (1ULL << 31)
79 #define RTEMS_RFS_TRACE_DIR_EMPTY (1ULL << 32)
80 #define RTEMS_RFS_TRACE_SYMLINK (1ULL << 33)
81 #define RTEMS_RFS_TRACE_SYMLINK_READ (1ULL << 34)
82 #define RTEMS_RFS_TRACE_FILE_OPEN (1ULL << 35)
83 #define RTEMS_RFS_TRACE_FILE_CLOSE (1ULL << 36)
84 #define RTEMS_RFS_TRACE_FILE_IO (1ULL << 37)
85 #define RTEMS_RFS_TRACE_FILE_SET (1ULL << 38)
86 
96 #if RTEMS_RFS_TRACE
98 #else
99 #define rtems_rfs_trace(_m) (0)
100 #endif
101 
109 #if RTEMS_RFS_TRACE
111 #else
112 #define rtems_rfs_trace_set_mask(_m)
113 #endif
114 
122 #if RTEMS_RFS_TRACE
124 #else
125 #define rtems_rfs_trace_clear_mask(_m)
126 #endif
127 
131 #if RTEMS_RFS_TRACE
132 int rtems_rfs_trace_shell_command (int argc, char *argv[]);
133 #endif
134 
135 #endif
rtems_rfs_trace_mask rtems_rfs_trace_clear_mask(rtems_rfs_trace_mask mask)
int rtems_rfs_trace_shell_command(int argc, char *argv[])
bool rtems_rfs_trace(rtems_rfs_trace_mask mask)
uint64_t rtems_rfs_trace_mask
Definition: rtems-rfs-trace.h:41
rtems_rfs_trace_mask rtems_rfs_trace_set_mask(rtems_rfs_trace_mask mask)