summaryrefslogtreecommitdiffstats
path: root/patches/TraceToolkit-0.9.5/TraceToolkit-0.9.5a-gds1.diff
diff options
context:
space:
mode:
Diffstat (limited to 'patches/TraceToolkit-0.9.5/TraceToolkit-0.9.5a-gds1.diff')
-rw-r--r--patches/TraceToolkit-0.9.5/TraceToolkit-0.9.5a-gds1.diff1006
1 files changed, 1006 insertions, 0 deletions
diff --git a/patches/TraceToolkit-0.9.5/TraceToolkit-0.9.5a-gds1.diff b/patches/TraceToolkit-0.9.5/TraceToolkit-0.9.5a-gds1.diff
new file mode 100644
index 000000000..64385ccc0
--- /dev/null
+++ b/patches/TraceToolkit-0.9.5/TraceToolkit-0.9.5a-gds1.diff
@@ -0,0 +1,1006 @@
+diff -ru --new-file TraceToolkit-0.9.5/Daemon/TraceDaemon.c /home/kub/src/TraceToolkit-0.9.5/Daemon/TraceDaemon.c
+--- TraceToolkit-0.9.5/Daemon/TraceDaemon.c Mon Apr 15 22:49:10 2002
++++ /home/kub/src/TraceToolkit-0.9.5/Daemon/TraceDaemon.c Wed Aug 20 12:58:21 2003
+@@ -1039,6 +1039,7 @@
+ return;
+ }
+
++#if 0
+ /* The first line is the column header, usually just CPU0, CPU1, etc.
+ Count the number of CPUs based on "CPUn" occurences. I didn't
+ see anything else in /proc that would have been any easier
+@@ -1076,6 +1077,9 @@
+ fclose(pIntFile);
+ return;
+ }
++#else
++ lNbCPU = 1;
++#endif
+
+ /* At the beginning of each valid IRQ line is a digit. Scan for
+ it, skip through the CPU hit fields, skip the IRQ supplier (or
+@@ -1104,6 +1108,7 @@
+ return;
+ }
+
++#if 0
+ /* The trailing space is crucial in the next format because
+ it gets rid of all whitespace after the supplier field.
+ That sets it up for the final fgets() */
+@@ -1115,6 +1120,7 @@
+ fclose(pIntFile);
+ return;
+ }
++#endif
+
+ /* Get the rest of the line */
+ fgets(lName, 100, pIntFile);
+diff -ru --new-file TraceToolkit-0.9.5/Include/LinuxEvents.h /home/kub/src/TraceToolkit-0.9.5/Include/LinuxEvents.h
+--- TraceToolkit-0.9.5/Include/LinuxEvents.h Tue Mar 19 06:54:55 2002
++++ /home/kub/src/TraceToolkit-0.9.5/Include/LinuxEvents.h Wed Aug 20 12:19:09 2003
+@@ -52,6 +52,7 @@
+ #define TRACE_ARCH_TYPE_SH 3 /* SH system */
+ #define TRACE_ARCH_TYPE_S390 4 /* S/390 system */
+ #define TRACE_ARCH_TYPE_MIPS 5 /* MIPS system */
++#define TRACE_ARCH_TYPE_ARM 6 /* ARM system */
+
+ /* Standard definitions for variants */
+ #define TRACE_ARCH_VARIANT_NONE 0 /* Main architecture implementation */
+diff -ru --new-file TraceToolkit-0.9.5/LibLTT/EventDB.c /home/kub/src/TraceToolkit-0.9.5/LibLTT/EventDB.c
+--- TraceToolkit-0.9.5/LibLTT/EventDB.c Mon Apr 15 18:10:13 2002
++++ /home/kub/src/TraceToolkit-0.9.5/LibLTT/EventDB.c Wed Aug 20 12:22:15 2003
+@@ -384,6 +384,11 @@
+ "SYSCALL : %s; IP : 0x%08X",
+ pmDB->SyscallString(pmDB, RFT8(pmDB, SYSCALL_EVENT(pEventStruct)->syscall_id)),
+ RFT32(pmDB, SYSCALL_EVENT(pEventStruct)->address));
++ else if (pmDB->ArchType == TRACE_ARCH_TYPE_ARM)
++ sprintf(pmString,
++ "SYSCALL : %s; PC : 0x%08X",
++ pmDB->SyscallString(pmDB, RFT8(pmDB, SYSCALL_EVENT(pEventStruct)->syscall_id)),
++ RFT32(pmDB, SYSCALL_EVENT(pEventStruct)->address));
+ break;
+
+ /* TRACE_TRAP_ENTRY */
+@@ -414,6 +419,11 @@
+ "TRAP : %s; IP : 0x%08X",
+ pmDB->TrapString(pmDB, RFT16(pmDB, TRAP_EVENT(pEventStruct)->trap_id)),
+ RFT32(pmDB, TRAP_EVENT(pEventStruct)->address));
++ else if (pmDB->ArchType == TRACE_ARCH_TYPE_ARM)
++ sprintf(pmString,
++ "TRAP : %s; PC : 0x%08X",
++ pmDB->TrapString(pmDB, RFT16(pmDB, TRAP_EVENT(pEventStruct)->trap_id)),
++ RFT32(pmDB, TRAP_EVENT(pEventStruct)->address));
+ break;
+
+ /* TRACE_IRQ_ENTRY */
+diff -ru --new-file TraceToolkit-0.9.5/LibLTT/LinuxTables.c /home/kub/src/TraceToolkit-0.9.5/LibLTT/LinuxTables.c
+--- TraceToolkit-0.9.5/LibLTT/LinuxTables.c Tue Apr 16 03:08:49 2002
++++ /home/kub/src/TraceToolkit-0.9.5/LibLTT/LinuxTables.c Wed Aug 20 12:17:27 2003
+@@ -1,6 +1,6 @@
+ /*
+ LinuxTables.c : Data tables for Linux.
+- Copyright (C) 2000, 2001 Karim Yaghmour (karym@opersys.com).
++ Copyright (C) 2000, 2001 Karim Yaghmour (karim@opersys.com).
+ Portions contributed by T. Halloran: (C) Copyright 2002 IBM Poughkeepsie, IBM Corporation
+
+ This program is free software; you can redistribute it and/or modify
+@@ -49,7 +49,7 @@
+ 0 /* TRACE_BUFFER_END */,
+ sizeof(trace_new_event) /* TRACE_NEW_EVENT */,
+ sizeof(trace_custom) /* TRACE_CUSTOM */,
+- sizeof(trace_change_mask) /* TRACE_CHANGE_MASK */
++ sizeof(trace_change_mask) /* TRACE_CHANGE_MASK */,
+ };
+
+ /* The default table could have been modified to take care of the S/390's particularities
+@@ -96,7 +96,7 @@
+ "",
+ "Event creation",
+ "Custom event",
+-"Change trace mask"
++"Change trace mask",
+ };
+
+ char* LinuxEventString(db* pmDB, int pmEventID, event* pmEvent)
+@@ -146,7 +146,7 @@
+ "", /* Buffer end */
+ "", /* New event */
+ "", /* Custom event */
+-"" /* Change mask */
++"", /* Change mask */
+ };
+
+ /* "Maximum" number of system calls on a linux box */
+@@ -161,7 +161,8 @@
+ #define NB_SYSCALLS_PPC 208
+ #define NB_SYSCALLS_SH 221
+ #define NB_SYSCALLS_390 225
+-#define NB_SYSCALLS_MIPS 221
++#define NB_SYSCALLS_MIPS 220
++#define NB_SYSCALLS_ARM 226
+
+ /* System call name according to it's ID for i386 */
+ char *LinuxI386SyscallID[NB_SYSCALLS_I386 + 1] =
+@@ -1070,234 +1071,466 @@
+ /* System call name according to it's ID for MIPS */
+ char *LinuxMIPSSyscallID[NB_SYSCALLS_MIPS + 1] =
+ {
+-"syscall", // 0 -- does not exit in x86 nor in arm
+-"exit", // 1
+-"fork", // 2
+-"read", // 3
+-"write", // 4
+-"open", // 5
+-"close", // 6
+-"waitpid", // 7
+-"creat", // 8
+-"link", // 9
+-"unlink", // 10
+-"execve", // 11
+-"chdir", // 12
+-"time", // 13
+-"mknod", // 14
+-"chmod", // 15
+-"lchown", // 16
+-"break", // 17
+-"oldstat", // 18
+-"lseek", // 19
+-"getpid", // 20
+-"mount", // 21
+-"umount", // 22
+-"setuid", // 23
+-"getuid", // 24
+-"stime", // 25
+-"ptrace", // 26
+-"alarm", // 27
+-"oldfstat", // 28
+-"pause", // 29
+-"utime", // 30
+-"stty", // 31
+-"gtty", // 32
+-"access", // 33
+-"nice", // 34
+-"ftime", // 35
+-"sync", // 36
+-"kill", // 37
+-"rename", // 38
+-"mkdir", // 39
+-"rmdir", // 40
+-"dup", // 41
+-"pipe", // 42
+-"times", // 43
+-"prof", // 44
+-"brk", // 45
+-"setgid", // 46
+-"getgid", // 47
+-"signal", // 48
+-"geteuid", // 49
+-"getegid", // 50
+-"acct", // 51
+-"umount2", // 52
+-"lock", // 53
+-"ioctl", // 54
+-"fcntl", // 55
+-"mpx", // 56
+-"setpgid", // 57
+-"ulimit", // 58
+-"unused59", // 59
+-"umask", // 60
+-"chroot", // 61
+-"ustat", // 62
+-"dup2", // 63
+-"getppid", // 64
+-"getpgrp", // 65
+-"setsid", // 66
+-"sigaction", // 67
+-"sgetmask", // 68
+-"ssetmask", // 69
+-"setreuid", // 70
+-"setregid", // 71
+-"sigsuspend", // 72
+-"sigpending", // 73
+-"sethostname", // 74
+-"setrlimit", // 75
+-"getrlimit", // 76
+-"getrusage", // 77
+-"gettimeofday", // 78
+-"settimeofday", // 79
+-"getgroups", // 80
+-"setgroups", // 81
+-"reserved82", // 82
+-"symlink", // 83
+-"oldlstat", // 84
+-"readlink", // 85
+-"uselib", // 86
+-"swapon", // 87
+-"reboot", // 88
+-"readdir", // 89
+-"mmap", // 90
+-"munmap", // 91
+-"truncate", // 92
+-"ftruncate", // 93
+-"fchmod", // 94
+-"fchown", // 95
+-"getpriority", // 96
+-"setpriority", // 97
+-"profil", // 98
+-"statfs", // 99
+-"fstatfs", // 100
+-"ioperm", // 101
+-"socketcall", // 102
+-"syslog", // 103
+-"setitimer", // 104
+-"getitimer", // 105
+-"stat", // 106
+-"lstat", // 107
+-"fstat", // 108
+-"unused109", // 109
+-"iopl", // 110
+-"vhangup", // 111
+-"idle", // 112
+-"vm86", // 113
+-"wait4", // 114
+-"swapoff", // 115
+-"sysinfo", // 116
+-"ipc", // 117
+-"fsync", // 118
+-"sigreturn", // 119
+-"clone", // 120
+-"setdomainname", // 121
+-"uname", // 122
+-"modify_ldt", // 123
+-"adjtimex", // 124
+-"mprotect", // 125
+-"sigprocmask", // 126
+-"create_module", // 127
+-"init_module", // 128
+-"delete_module", // 129
+-"get_kernel_syms", // 130
+-"quotactl", // 131
+-"getpgid", // 132
+-"fchdir", // 133
+-"bdflush", // 134
+-"sysfs", // 135
+-"personality", // 136
+-"afs_syscall", // 137 /* Syscall for Andrew File System */
+-"setfsuid", // 138
+-"setfsgid", // 139
+-"_llseek", // 140
+-"getdents", // 141
+-"_newselect", // 142
+-"flock", // 143
+-"msync", // 144
+-"readv", // 145
+-"writev", // 146
+-"cacheflush", // 147
+-"cachectl", // 148
+-"sysmips", // 149
+-"unused150", // 150
+-"getsid", // 151
+-"fdatasync", // 152
+-"_sysctl", // 153
+-"mlock", // 154
+-"munlock", // 155
+-"mlockall", // 156
+-"munlockall", // 157
+-"sched_setparam", // 158
+-"sched_getparam", // 159
+-"sched_setscheduler", // 160
+-"sched_getscheduler", // 161
+-"sched_yield", // 162
+-"sched_get_priority_max", // 163
+-"sched_get_priority_min", // 164
+-"sched_rr_get_interval", // 165
+-"nanosleep", // 166
+-"mremap", // 167
+-"accept", // 168
+-"bind", // 169
+-"connect", // 170
+-"getpeername", // 171
+-"getsockname", // 172
+-"getsockopt", // 173
+-"listen", // 174
+-"recv", // 175
+-"recvfrom", // 176
+-"recvmsg", // 177
+-"send", // 178
+-"sendmsg", // 179
+-"sendto", // 180
+-"setsockopt", // 181
+-"shutdown", // 182
+-"socket", // 183
+-"socketpair", // 184
+-"setresuid", // 185
+-"getresuid", // 186
+-"query_module", // 187
+-"poll", // 188
+-"nfsservctl", // 189
+-"setresgid", // 190
+-"getresgid", // 191
+-"prctl", // 192
+-"rt_sigreturn", // 193
+-"rt_sigaction", // 194
+-"rt_sigprocmask", // 195
+-"rt_sigpending", // 196
+-"rt_sigtimedwait", // 197
+-"rt_sigqueueinfo", // 198
+-"rt_sigsuspend", // 199
+-"pread", // 200
+-"pwrite", // 201
+-"chown", // 202
+-"getcwd", // 203
+-"capget", // 204
+-"capset", // 205
+-"sigaltstack", // 206
+-"sendfile", // 207
+-"getpmsg", // 208
+-"putpmsg", // 209
+-"mmap2", // 210
+-"truncate64", // 211
+-"ftruncate64", // 212
+-"stat64", // 213
+-"lstat64", // 214
+-"fstat64", // 215
+-"pivot_root", // 216
+-"mincore", // 217
+-"madvise", // 218
+-"getdents64", // 219
+-"fcntl64", // 220
++"syscall", /* 0 */
++"exit",
++"fork",
++"read",
++"write",
++"open", /* 5 */
++"close",
++"waitpid",
++"creat",
++"link",
++"unlink", /* 10 */
++"execve",
++"chdir",
++"time",
++"mknod",
++"chmod", /* 15 */
++"lchown",
++"ni_syscall 17",
++"stat",
++"lseek",
++"getpid", /* 20 */
++"mount",
++"oldumount",
++"setuid",
++"getuid",
++"stime", /* 25 */
++"ptrace",
++"alarm",
++"fstat",
++"pause",
++"utime", /* 30 */
++"ni_syscall 31",
++"ni_syscall 32",
++"access",
++"nice",
++"ni_syscall 35", /* 35 */
++"sync",
++"kill",
++"rename",
++"mkdir",
++"rmdir", /* 40 */
++"dup",
++"pipe",
++"times",
++"ni_syscall 44",
++"brk", /* 45 */
++"setgid",
++"getgid",
++"ni_syscall 48",
++"geteuid",
++"getegid", /* 50 */
++"acct",
++"umount",
++"ni_syscall 53",
++"ioctl",
++"fcntl", /* 55 */
++"ni_syscall 56",
++"setpgid",
++"ni_syscall 58",
++"olduname",
++"umask", /* 60 */
++"chroot",
++"ustat",
++"dup2",
++"getppid",
++"getpgrp", /* 65 */
++"setsid",
++"sigaction",
++"sgetmask",
++"ssetmask",
++"setreuid", /* 70 */
++"setregid",
++"sigsuspend",
++"sigpending",
++"sethostname",
++"setrlimit", /* 75 */
++"getrlimit",
++"getrusage",
++"gettimeofday",
++"settimeofday",
++"getgroups", /* 80 */
++"setgroups",
++"ni_syscall 82",
++"symlink",
++"lstat",
++"readlink", /* 85 */
++"uselib",
++"swapon",
++"reboot",
++"old_readdir",
++"old_mmap", /* 90 */
++"munmap",
++"truncate",
++"ftruncate",
++"fchmod",
++"fchown", /* 95 */
++"getpriority",
++"setpriority",
++"ni_syscall 98",
++"statfs",
++"fstatfs", /* 100 */
++"ioperm",
++"socketcall",
++"syslog",
++"setitimer",
++"getitimer", /* 105 */
++"newstat",
++"newlstat",
++"newfstat",
++"uname",
++"iopl", /* 110 */
++"vhangup",
++"ni_syscall 112",
++"vm86",
++"wait4",
++"swapoff", /* 115 */
++"sysinfo",
++"ipc",
++"fsync",
++"sigreturn",
++"clone", /* 120 */
++"setdomainname",
++"newuname",
++"sys_ni_syscall 123",
++"adjtimex",
++"mprotect", /* 125 */
++"sigprocmask",
++"create_module",
++"init_module",
++"delete_module",
++"get_kernel_syms", /* 130 */
++"quotactl",
++"getpgid",
++"fchdir",
++"bdflush",
++"sysfs", /* 135 */
++"personality",
++"ni_syscall 137", /* for afs_syscall */
++"setfsuid",
++"setfsgid",
++"llseek", /* 140 */
++"getdents",
++"select",
++"flock",
++"msync",
++"readv", /* 145 */
++"writev",
++"cacheflush",
++"cachectl",
++"sysmips",
++"ni_syscall 150", /* 150 */
++"getsid",
++"fdatasync",
++"sysctl",
++"mlock",
++"munlock", /* 155 */
++"mlockall",
++"munlockall",
++"sched_setparam",
++"sched_getparam",
++"sched_setscheduler", /* 160 */
++"sched_getscheduler",
++"sched_yield",
++"sched_get_priority_max",
++"sched_get_priority_min",
++"sched_rr_get_interval", /* 165 */
++"nanosleep",
++"mremap",
++"accept",
++"bind",
++"connect", /* 170 */
++"getpeername",
++"getsockname",
++"getsockopt",
++"listen",
++"recv", /* 175 */
++"recvfrom",
++"recvmsg",
++"send",
++"sendmsg",
++"sendto", /* 180 */
++"setsockopt",
++"shutdown",
++"socket",
++"socketpair",
++"setresuid", /* 185 */
++"getresuid",
++"query_module",
++"poll",
++"nfsservctl",
++"setresgid", /* 190 */
++"getresgid",
++"prctl",
++"rt_sigreturn",
++"rt_sigaction",
++"rt_sigprocmask", /* 195 */
++"rt_sigpending",
++"rt_sigtimedwait",
++"rt_sigqueueinfo",
++"rt_sigsuspend",
++"pread", /* 200 */
++"pwrite",
++"chown",
++"getcwd",
++"capget",
++"capset", /* 205 */
++"sigaltstack",
++"sendfile",
++"ni_syscall 208",
++"ni_syscall 209",
++"mmap2", /* 210 */
++"truncate64",
++"ftruncate64",
++"stat64",
++"lstat64",
++"fstat64", /* 215 */
++"pivot_root",
++"mincore",
++"madvise",
++"getdents64",
++"fcntl64", /* 220 */
++};
++
++/* System call name according to its ID for ARM */
++char *LinuxARMSyscallID[NB_SYSCALLS_ARM + 1] =
++{
++"ni_syscall 0", /* 0 */
++"exit",
++"fork",
++"read",
++"write",
++"open", /* 5 */
++"close",
++"ni_syscall 7", /* was sys_waitpid */
++"creat",
++"link",
++"unlink", /* 10 */
++"execve",
++"chdir",
++"time", /* used by libc4 */
++"mknod",
++"chmod", /* 15 */
++"lchown16",
++"ni_syscall 17", /* was sys_break */
++"ni_syscall 18", /* was sys_stat */
++"lseek",
++"getpid", /* 20 */
++"mount",
++"oldumount", /* used by libc4 */
++"setuid16",
++"getuid16",
++"stime", /* 25 */
++"ptrace",
++"alarm", /* used by libc4 */
++"ni_syscall 28", /* was sys_fstat */
++"pause",
++"utime", /* 30 */ /* used by libc4 */
++"ni_syscall 31", /* was sys_stty */
++"ni_syscall 32", /* was sys_getty */
++"access",
++"nice",
++"ni_syscall 35", /* 35 */ /* was sys_ftime */
++"sync",
++"kill",
++"rename",
++"mkdir",
++"rmdir", /* 40 */
++"dup",
++"pipe",
++"times",
++"ni_syscall 44", /* was sys_prof */
++"brk", /* 45 */
++"setgid16",
++"getgid16",
++"ni_syscall 48", /* was sys_signal */
++"geteuid16",
++"getegid16", /* 50 */
++"acct",
++"umount",
++"ni_syscall 53", /* was sys_lock */
++"ioctl",
++"fcntl", /* 55 */
++"ni_syscall 56", /* was sys_mpx */
++"setpgid",
++"ni_syscall 58", /* was sys_ulimit */
++"ni_syscall 59", /* was sys_olduname */
++"umask", /* 60 */
++"chroot",
++"ustat",
++"dup2",
++"getppid",
++"getpgrp", /* 65 */
++"setsid",
++"sigaction",
++"ni_syscall 68", /* was sys_sgetmask */
++"ni_syscall 69", /* was sys_ssetmask */
++"setreuid16", /* 70 */
++"setregid16",
++"sigsuspend",
++"sigpending",
++"sethostname",
++"setrlimit", /* 75 */
++"old_getrlimit", /* used by libc4 */
++"getrusage",
++"gettimeofday",
++"settimeofday",
++"getgroups16", /* 80 */
++"setgroups16",
++"old_select", /* used by libc4 */
++"symlink",
++"ni_syscall 84", /* was sys_lstat */
++"readlink", /* 85 */
++"uselib",
++"swapon",
++"reboot",
++"old_readdir", /* used by libc4 */
++"old_mmap", /* 90 */ /* used by libc4 */
++"munmap",
++"truncate",
++"ftruncate",
++"fchmod",
++"fchown16", /* 95 */
++"getpriority",
++"setpriority",
++"ni_syscall 98", /* was sys_profil */
++"statfs",
++"fstatfs", /* 100 */
++"ni_syscall 101",
++"socketcall",
++"syslog",
++"setitimer",
++"getitimer", /* 105 */
++"newstat",
++"newlstat",
++"newfstat",
++"ni_syscall 109", /* was sys_uname */
++"ni_syscall 110", /* 110 */ /* was sys_iopl */
++"vhangup",
++"ni_syscall 112",
++"syscall", /* call a syscall */
++"wait4",
++"swapoff", /* 115 */
++"sysinfo",
++"ipc",
++"fsync",
++"sigreturn",
++"clone", /* 120 */
++"setdomainname",
++"newuname",
++"ni_syscall 123",
++"adjtimex",
++"mprotect", /* 125 */
++"sigprocmask",
++"create_module",
++"init_module",
++"delete_module",
++"get_kernel_syms", /* 130 */
++"quotactl",
++"getpgid",
++"fchdir",
++"bdflush",
++"sysfs", /* 135 */
++"personality",
++"ni_syscall 137", /* _sys_afs_syscall */
++"setfsuid16",
++"setfsgid16",
++"llseek", /* 140 */
++"getdents",
++"select",
++"flock",
++"msync",
++"readv", /* 145 */
++"writev",
++"getsid",
++"fdatasync",
++"sysctl",
++"mlock", /* 150 */
++"munlock",
++"mlockall",
++"munlockall",
++"sched_setparam",
++"sched_getparam", /* 155 */
++"sched_setscheduler",
++"sched_getscheduler",
++"sched_yield",
++"sched_get_priority_max",
++"sched_get_priority_min", /* 160 */
++"sched_rr_get_interval",
++"nanosleep",
++"mremap",
++"setresuid16",
++"getresuid16", /* 165 */
++"ni_syscall 166",
++"query_module",
++"poll",
++"nfsservctl",
++"setresgid16", /* 170 */
++"getresgid16",
++"prctl",
++"rt_sigreturn",
++"rt_sigaction",
++"rt_sigpending", /* 175 */
++"rt_sigprocmask",
++"rt_sigtimedwait",
++"rt_sigqueueinfo",
++"rt_sigsuspend",
++"pread", /* 180 */
++"pwrite",
++"chown16",
++"getcwd",
++"capget",
++"capset", /* 185 */
++"sigaltstack",
++"sendfile",
++"ni_syscall 188",
++"ni_syscall 189",
++"vfork", /* 190 */
++"getrlimit",
++"mmap2",
++"truncate64",
++"ftruncate64",
++"stat64", /* 195 */
++"lstat64",
++"fstat64",
++"lchown",
++"getuid",
++"getgid", /* 200 */
++"geteuid",
++"getegid",
++"setreuid",
++"setregid",
++"getgroups", /* 205 */
++"setgroups",
++"fchown",
++"setresuid",
++"getresuid",
++"setresgid", /* 210 */
++"getresgid",
++"chown",
++"setuid",
++"setgid",
++"setfsuid", /* 215 */
++"setfsgid",
++"getdents64",
++"pivot_root",
++"mincore",
++"madvise", /* 220 */
++"fcntl64",
++"ni_syscall 222", /* TUX */
++"ni_syscall 223", /* Security */
++"gettid",
++"readahead", /* 225 */
++"",
+ };
+
+
+ /* Number of traps possible on i386 */
+ #define NB_TRAPS_I386 19
+
+-/* Trap according to it's ID on i386 */
++/* Trap according to its ID on i386 */
+ char *LinuxI386TrapID[NB_TRAPS_I386] =
+ {
+ "divide error",
+@@ -1382,7 +1615,7 @@
+ "0x2F00"
+ };
+
+-/* Trap according to it's ID on PPC 6xx/7xx/74xx/8260/POWER3 (see PowerPC manual for more details) */
++/* Trap according to its ID on PPC 6xx/7xx/74xx/8260/POWER3 (see PowerPC manual for more details) */
+ char *LinuxPPC6xxTrapID[NB_TRAPS_PPC] =
+ {
+ "0x0000", /* Nothing for the first one */
+@@ -1435,7 +1668,7 @@
+ "0x2F00"
+ };
+
+-/* Trap according to it's ID on PPC 8xx (see PowerPC manual for more details) */
++/* Trap according to its ID on PPC 8xx (see PowerPC manual for more details) */
+ char *LinuxPPC8xxTrapID[NB_TRAPS_PPC] =
+ {
+ "0x0000", /* Nothing for the first one */
+@@ -1488,7 +1721,7 @@
+ "0x2F00"
+ };
+
+-/* Trap according to it's ID on PPC iSeries (see PowerPC manual for more details) */
++/* Trap according to its ID on PPC iSeries (see PowerPC manual for more details) */
+ char *LinuxPPCiSeriesTrapID[NB_TRAPS_PPC] =
+ {
+ "0x0000", /* Nothing for the first one */
+@@ -1545,7 +1778,7 @@
+ /* Number of traps possible on SuperH (see arch/sh/kernel/entry.S for details) */
+ #define NB_TRAPS_SH 48
+
+-/* Trap according to it's EXPEVT/INTEVT ID>>5 (see SuperH manual for more details) */
++/* Trap according to its EXPEVT/INTEVT ID>>5 (see SuperH manual for more details) */
+ char *LinuxSHTrapID[NB_TRAPS_SH] =
+ {
+ "Reset", /* 0x000 */
+@@ -1579,7 +1812,7 @@
+
+ #define NB_TRAPS_390 65
+
+-/* Trap according to it's ID on 390 */
++/* Trap according to its ID on 390 */
+ char *Linux390TrapID[NB_TRAPS_390] =
+ {
+ "0x00000000", /* Nothing for the first one */
+@@ -1649,27 +1882,75 @@
+ "Monitor event"
+ };
+
+-#define NB_TRAPS_MIPS 16
++#define NB_TRAPS_MIPS 32
+
+-/* Trap according to it's ID on MIPS */
++/* Trap according to its ID on MIPS */
++/*
++ Maximum string length is 30 -- see hardcoded value of lString[] in
++ EGIDrawLinuxEvents().
++ 123456789012345678901234567890
++ */
+ char *LinuxMIPSTrapID[NB_TRAPS_MIPS] =
+ {
+-"INT", // 0, (never called) External Interrupt
+-"MOD", // 1, TLB Modified
+-"TLBL", // 2, TLB Load
+-"TLBS", // 3, TLB Store
+-"ADEL", // 4, (never called) Address Error in Load or instruction fetch
+-"ADES", // 5, (never called) Address Error in data Store
+-"IBE", // 6, (never called) Bus Error in Instrufction fetch
+-"DBE", // 7, (never called) Bus Error in Data load/store
+-"SYS", // 8, (never called) Syscall
+-"BP", // 9, (never called) Breakpoint
+-"RI", // 10, (never called) Reserved Instruction
+-"CPU", // 11, (never called) Coprocessor unusable
+-"OVF", // 12, (never called) arithmatic OverFlow
+-"", // 13, not used
+-"", // 14, not used
+-"", // 15, not used
++"External Interrupt",
++"TLB Modification",
++"TLB Load",
++"TLB Store",
++"Address Error on Load",
++"Address Error on Store",
++"Bus Error on Instruction fetch",
++"Bus Error on Data Load",
++"Syscall",
++"Breakpoint",
++"Reserved Instruction",
++"Coprocessor Unusable",
++"Arithmetic Overflow",
++"Trap",
++"Virtual Coherency Error Icache", /* future: MC */
++"Floating Point", /* future: NDC */
++"Coprocessor 2",
++"reserved 17",
++"reserved 18",
++"reserved 19",
++"reserved 20",
++"reserved 21",
++"reserved 22",
++"Watch",
++"Machine Check",
++"reserved 25",
++"reserved 26",
++"reserved 27",
++"reserved 28",
++"reserved 29",
++"reserved 30",
++"Virtual Coherency Error Dcache"
++};
++
++/* Number of traps possible on ARM */
++#define NB_TRAPS_ARM 19
++
++/* Trap according to its ID on ARM */
++char *LinuxARMTrapID[NB_TRAPS_ARM] =
++{
++"reserved 0",
++"debug",
++"reserved 2",
++"reserved 3",
++"reserved 4",
++"reserved 5",
++"undefined instruction", /* invalidop */
++"reserved 7",
++"reserved 8",
++"reserved 9",
++"reserved 10",
++"segment not present",
++"reserved 12",
++"reserved 13",
++"page fault",
++"reserved 15",
++"reserved 16",
++"reserved 17",
++"data abort" /* machine check */
+ };
+
+ static char* NullString = "";
+@@ -1716,6 +1997,13 @@
+ return LinuxMIPSSyscallID[pmID];
+ else
+ return NullString;
++
++ case TRACE_ARCH_TYPE_ARM:
++ if(pmID <= NB_SYSCALLS_ARM)
++ return LinuxARMSyscallID[pmID];
++ else
++ return NullString;
++ break;
+ };
+
+ /* Just in case */
+@@ -1783,6 +2071,13 @@
+ return LinuxMIPSTrapID[lID];
+ else
+ return NullString;
++
++ case TRACE_ARCH_TYPE_ARM:
++ if(lID < NB_TRAPS_ARM)
++ return LinuxARMTrapID[lID];
++ else
++ return NullString;
++ break;
+ };
+
+ /* Just in case */
+diff -ru --new-file TraceToolkit-0.9.5/Visualizer/EventGraph.c /home/kub/src/TraceToolkit-0.9.5/Visualizer/EventGraph.c
+--- TraceToolkit-0.9.5/Visualizer/EventGraph.c Tue Apr 16 03:57:28 2002
++++ /home/kub/src/TraceToolkit-0.9.5/Visualizer/EventGraph.c Wed Aug 20 12:23:55 2003
+@@ -899,6 +899,7 @@
+ case TRACE_ARCH_TYPE_PPC :
+ case TRACE_ARCH_TYPE_SH :
+ case TRACE_ARCH_TYPE_MIPS :
++ case TRACE_ARCH_TYPE_ARM :
+ snprintf(lString, EGRAPH_DEFAULT_STRLEN, "%s",
+ pmEventDB->TrapString(pmEventDB,
+ RFT16(pmEventDB, TRAP_EVENT(lEventDesc.Struct)->trap_id)));
+@@ -1020,6 +1021,7 @@
+ case TRACE_ARCH_TYPE_PPC :
+ case TRACE_ARCH_TYPE_SH :
+ case TRACE_ARCH_TYPE_MIPS :
++ case TRACE_ARCH_TYPE_ARM :
+ snprintf(lString, EGRAPH_DEFAULT_STRLEN, "%s",
+ pmEventDB->TrapString(pmEventDB,
+ RFT16(pmEventDB, TRAP_EVENT(lEventDesc.Struct)->trap_id)));
+@@ -1512,6 +1514,7 @@
+ case TRACE_ARCH_TYPE_PPC :
+ case TRACE_ARCH_TYPE_SH :
+ case TRACE_ARCH_TYPE_MIPS :
++ case TRACE_ARCH_TYPE_ARM :
+ snprintf(lString, EGRAPH_DEFAULT_STRLEN, "%s",
+ pmEventGraph->EventDB->TrapString(pmEventGraph->EventDB,
+ RFT16(pEventDB, TRAP_EVENT(pmEventDesc->Struct)->trap_id)));