OBS User unknown 2006-12-18 23:17:52 +00:00 committed by Git OBS Bridge
commit f6ae875b0f
18 changed files with 4244 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

11
fstatat-ppc64.patch Normal file
View File

@ -0,0 +1,11 @@
--- file.c
+++ file.c
@@ -1225,7 +1225,7 @@
printpath(tcp, tcp->u_arg[1]);
tprintf(", ");
} else {
-#ifdef HAVE_STAT64
+#if defined HAVE_STAT64 && !(defined POWERPC && defined __powerpc64__)
printstat64(tcp, tcp->u_arg[2]);
#else
printstat(tcp, tcp->u_arg[2]);

11
ioctl.diff Normal file
View File

@ -0,0 +1,11 @@
--- term.c
+++ term.c
@@ -414,7 +414,7 @@
case TIOCGPTN:
#endif
tprintf(", ");
- printnum(tcp, arg, "%d");
+ printnum_int(tcp, arg, "%d");
return 1;
#if 0

125
proper_inotify.diff Normal file
View File

@ -0,0 +1,125 @@
--- file.c
+++ file.c
@@ -324,6 +324,49 @@
return 0;
}
+static const struct xlat inotify_modes[] = {
+ { 0x00000001, "IN_ACCESS" },
+ { 0x00000002, "IN_MODIFY" },
+ { 0x00000004, "IN_ATTRIB" },
+ { 0x00000008, "IN_CLOSE_WRITE" },
+ { 0x00000010, "IN_CLOSE_NOWRITE" },
+ { 0x00000020, "IN_OPEN" },
+ { 0x00000040, "IN_MOVED_FROM" },
+ { 0x00000080, "IN_MOVED_TO" },
+ { 0x00000100, "IN_CREATE" },
+ { 0x00000200, "IN_DELETE" },
+ { 0x00000400, "IN_DELETE_SELF" },
+ { 0x00000800, "IN_MOVE_SELF" },
+ { 0x00002000, "IN_UNMOUNT" },
+ { 0x00004000, "IN_Q_OVERFLOW" },
+ { 0x00008000, "IN_IGNORED" },
+ { 0x40000000, "IN_ISDIR" },
+ { 0x80000000, "IN_ONESHOT" }
+};
+
+int
+sys_inotify_add_watch(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ tprintf("%ld, ", tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ printflags(inotify_modes, tcp->u_arg[2], "IN_???");
+ }
+ return 0;
+}
+
+int
+sys_inotify_rm_watch(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ tprintf("%ld, %ld", tcp->u_arg[0], tcp->u_arg[1]);
+ }
+ return 0;
+}
+
#ifdef LINUXSPARC
static const struct xlat openmodessol[] = {
{ 0, "O_RDWR" },
--- linux/alpha/syscallent.h
+++ linux/alpha/syscallent.h
@@ -473,5 +473,5 @@
{ 3, 0, printargs, "ioprio_set" }, /* 442 */
{ 2, 0, printargs, "ioprio_get" }, /* 443 */
{ 0, 0, printargs, "inotify_init" }, /* 444 */
- { 3, 0, printargs, "inotify_add_watch" }, /* 445 */
- { 2, 0, printargs, "inotify_rm_watch" }, /* 446 */
+ { 3, 0, sys_inotify_add_watch, "inotify_add_watch" }, /* 445 */
+ { 2, 0, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 446 */
--- linux/ia64/syscallent.h
+++ linux/ia64/syscallent.h
@@ -1181,8 +1181,8 @@
{ 2, 0, printargs, "ioprio_get" }, /* 1275 */
{ 3, 0, printargs, "set_zone_reclaim" }, /* 1276 */
{ 0, 0, printargs, "inotify_init" }, /* 1277 */
- { 3, 0, printargs, "inotify_add_watch" }, /* 1278 */
- { 2, 0, printargs, "inotify_rm_watch" }, /* 1279 */
+ { 3, 0, sys_inotify_add_watch, "inotify_add_watch" }, /* 1278 */
+ { 2, 0, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 1279 */
{ 4, 0, printargs, "migrate_pages" }, /* 1280 */
{ 4, TD|TF, sys_openat, "openat" }, /* 1281 */
{ 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 1282 */
--- linux/powerpc/syscallent.h
+++ linux/powerpc/syscallent.h
@@ -305,8 +305,8 @@
{ 3, 0, printargs, "ioprio_set" }, /* 273 */
{ 2, 0, printargs, "ioprio_get" }, /* 274 */
{ 0, 0, printargs, "inotify_init" }, /* 275 */
- { 3, 0, printargs, "inotify_add_watch" }, /* 276 */
- { 2, 0, printargs, "inotify_rm_watch" }, /* 277 */
+ { 3, 0, sys_inotify_add_watch, "inotify_add_watch" }, /* 276 */
+ { 2, 0, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 277 */
{ 5, 0, printargs, "SYS_278" }, /* 278 */
{ 5, 0, printargs, "SYS_279" }, /* 279 */
{ 5, 0, printargs, "SYS_280" }, /* 280 */
--- linux/s390/syscallent.h
+++ linux/s390/syscallent.h
@@ -313,8 +313,8 @@
{ 3, 0, printargs, "ioprio_set" }, /* 282 */
{ 2, 0, printargs, "ioprio_get" }, /* 283 */
{ 0, 0, printargs, "inotify_init" }, /* 284 */
- { 3, 0, printargs, "inotify_add_watch" }, /* 285 */
- { 2, 0, printargs, "inotify_rm_watch" }, /* 286 */
+ { 3, 0, sys_inotify_add_watch, "inotify_add_watch" }, /* 285 */
+ { 2, 0, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 286 */
{ 5, 0, printargs, "SYS_287" }, /* 287 */
{ 5, 0, printargs, "SYS_288" }, /* 288 */
--- linux/s390x/syscallent.h
+++ linux/s390x/syscallent.h
@@ -312,8 +312,8 @@
{ 3, 0, printargs, "ioprio_set" }, /* 282 */
{ 2, 0, printargs, "ioprio_get" }, /* 283 */
{ 0, 0, printargs, "inotify_init" }, /* 284 */
- { 3, 0, printargs, "inotify_add_watch" }, /* 285 */
- { 2, 0, printargs, "inotify_rm_watch" }, /* 286 */
+ { 3, 0, sys_inotify_add_watch, "inotify_add_watch" }, /* 285 */
+ { 2, 0, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 286 */
{ 5, 0, printargs, "SYS_287" }, /* 287 */
{ 5, 0, printargs, "SYS_288" }, /* 288 */
--- linux/syscall.h
+++ linux/syscall.h
@@ -102,6 +102,7 @@
int sys_mbind(), sys_get_mempolicy(), sys_set_mempolicy();
int sys_arch_prctl();
int sys_io_setup(), sys_io_submit(), sys_io_cancel(), sys_io_getevents(), sys_io_destroy();
+int sys_inotify_init(), sys_inotify_add_watch(), sys_inotify_rm_watch();
/* sys_socketcall subcalls */
merged the two writing of sys_inotify_add_watch and sys_inotify_rm_watch into syscalls.diff

0
ready Normal file
View File

119
strace-4.5.14.diff Normal file
View File

@ -0,0 +1,119 @@
--- mem.c
+++ mem.c
@@ -551,7 +551,7 @@
#if defined(LINUX) && defined(__i386__)
void
print_ldt_entry (ldt_entry)
-struct modify_ldt_ldt_s *ldt_entry;
+struct user_desc *ldt_entry;
{
tprintf("base_addr:%#08lx, "
"limit:%d, "
@@ -576,10 +576,10 @@
struct tcb *tcp;
{
if (entering(tcp)) {
- struct modify_ldt_ldt_s copy;
+ struct user_desc copy;
tprintf("%ld", tcp->u_arg[0]);
if (tcp->u_arg[1] == 0
- || tcp->u_arg[2] != sizeof (struct modify_ldt_ldt_s)
+ || tcp->u_arg[2] != sizeof (struct user_desc)
|| umove(tcp, tcp->u_arg[1], &copy) == -1)
tprintf(", %lx", tcp->u_arg[1]);
else {
@@ -599,7 +599,7 @@
sys_set_thread_area(tcp)
struct tcb *tcp;
{
- struct modify_ldt_ldt_s copy;
+ struct user_desc copy;
if (entering(tcp)) {
if (umove(tcp, tcp->u_arg[0], &copy) != -1) {
if (copy.entry_number == -1)
@@ -628,7 +628,7 @@
sys_get_thread_area(tcp)
struct tcb *tcp;
{
- struct modify_ldt_ldt_s copy;
+ struct user_desc copy;
if (exiting(tcp)) {
if (umove(tcp, tcp->u_arg[0], &copy) != -1) {
tprintf("{entry_number:%d, ", copy.entry_number);
--- process.c
+++ process.c
@@ -589,7 +589,7 @@
tprintf(", parent_tidptr=%#lx", tcp->u_arg[ARG_PTID]);
if (flags & CLONE_SETTLS) {
# ifdef I386
- struct modify_ldt_ldt_s copy;
+ struct user_desc copy;
if (umove(tcp, tcp->u_arg[ARG_TLS], &copy) != -1) {
tprintf(", {entry_number:%d, ",
copy.entry_number);
--- signal.c
+++ signal.c
@@ -1692,7 +1692,7 @@
struct tcb *tcp;
{
if (entering(tcp)) {
- tprintf("%ld, %s", tcp->u_arg[0], signame(tcp->u_arg[1]));
+ tprintf("%d, %s", (pid_t)tcp->u_arg[0], signame(tcp->u_arg[1]));
}
return 0;
}
--- strace.c
+++ strace.c
@@ -1382,7 +1382,7 @@
#ifdef LINUX
if (zombie != NULL)
- error = detach(zombie) || error;
+ error = detach(zombie, 0) || error;
#endif
return error;
@@ -1962,7 +1962,7 @@
fprintf(stderr,
"PANIC: handle_group_exit: %d leader %d\n",
tcp->pid, leader ? leader->pid : -1);
- detach(tcp); /* Already died. */
+ detach(tcp, 0); /* Already died. */
}
else {
/* Mark that we are taking the process down. */
@@ -2259,6 +2259,7 @@
&& (qual_flags[WSTOPSIG(status)] & QUAL_SIGNAL)) {
unsigned long addr = 0, pc = 0;
#ifdef PT_GETSIGINFO
+# if defined IA64 && defined LINUX
# define PSR_RI 41
struct siginfo si;
unsigned long psr;
@@ -2269,7 +2270,7 @@
pc += (psr >> PSR_RI) & 0x3;
ptrace(PT_GETSIGINFO, pid, 0, (long) &si);
addr = (unsigned long) si.si_addr;
-#elif defined PTRACE_GETSIGINFO
+# else
if (WSTOPSIG(status) == SIGSEGV ||
WSTOPSIG(status) == SIGBUS) {
siginfo_t si;
@@ -2278,6 +2279,7 @@
addr = (unsigned long)
si.si_addr;
}
+# endif
#endif
printleader(tcp);
tprintf("--- %s (%s) @ %lx (%lx) ---",
--- system.c
+++ system.c
@@ -1578,7 +1578,6 @@
{ CTL_KERN, "CTL_KERN" },
{ CTL_VM, "CTL_VM" },
{ CTL_NET, "CTL_NET" },
- { CTL_PROC, "CTL_PROC" },
{ CTL_FS, "CTL_FS" },
{ CTL_DEBUG, "CTL_DEBUG" },
{ CTL_DEV, "CTL_DEV" },

3
strace-4.5.14.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a6808914cbfead2595dfd061a0f14dcbb0a8bb645e3cfdfa5c247d7ded9e0e7d
size 445134

2155
strace-cvs.diff Normal file

File diff suppressed because it is too large Load Diff

11
strace-graph.diff Normal file
View File

@ -0,0 +1,11 @@
--- strace-graph
+++ strace-graph
@@ -229,7 +229,7 @@
push @$seq, ['EXEC', $filename, $argv];
$pr{$pid}{seq} = $seq;
- } elsif ($call eq 'fork' || $call eq 'clone' || $call eq 'vfork') {
+ } elsif ($call eq 'fork' || $call eq 'clone' || $call eq 'clone2' || $call eq 'vfork') {
return if $result == 0;
my $seq = $pr{$pid}{seq};

View File

@ -0,0 +1,336 @@
2006-01-22 initially Ulrich Drepper <drepper@redhat.com>
- done identically bk@suse.de (not knowing/not having found his patch):
* file.c (sys_openat, sys_faccessat, sys_newfstatat, sys_mkdirat,
sys_linkat, sys_unlinkat, sys_symlinkat, sys_readlinkat, sys_renameat,
sys_fchownat, sys_fchmodat, sys_futimesat, sys_mknodat): New functions.
The hooks for the new functions are in the syscalls.diff
Tested using the glibc testcases by bk@suse.de:
--- strace.current/file.c 2005-06-08 22:45:28.000000000 +0200
+++ strace/file.c 2006-03-27 23:52:11.000000000 +0200
@@ -324,6 +324,33 @@ struct tcb *tcp;
return 0;
}
+static inline void printdfd(dfd)
+int dfd;
+{
+ if (dfd == AT_FDCWD)
+ tprintf("AT_FDCWD, ");
+ else
+ tprintf("%d, ", dfd);
+}
+
+int
+sys_openat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ /* flags */
+ printflags(openmodes, tcp->u_arg[2] + 1, "O_???");
+ if (tcp->u_arg[2] & O_CREAT) {
+ /* mode */
+ tprintf(", %#lo", tcp->u_arg[3]);
+ }
+ }
+ return 0;
+}
+
#ifdef LINUXSPARC
static const struct xlat openmodessol[] = {
{ 0, "O_RDWR" },
@@ -400,6 +427,19 @@ struct tcb *tcp;
}
int
+sys_faccessat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ printflags(access_flags, tcp->u_arg[2], "?_OK");
+ }
+ return 0;
+}
+
+int
sys_umask(tcp)
struct tcb *tcp;
{
@@ -1128,6 +1168,31 @@ struct tcb *tcp;
}
#endif
+static const struct xlat fstatatflags[] = {
+ { AT_SYMLINK_NOFOLLOW, "AT_SYMLINK_NOFOLLOW" },
+ { 0, NULL },
+};
+
+int
+sys_fstatat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ } else {
+#ifdef HAVE_STAT64
+ printstat64(tcp, tcp->u_arg[2]);
+#else
+ printstat(tcp, tcp->u_arg[2]);
+#endif
+ tprintf(", ");
+ printflags(fstatatflags, tcp->u_arg[3], "AT_???");
+ }
+ return 0;
+}
+
int
sys_fstat64(tcp)
struct tcb *tcp;
@@ -1696,6 +1757,18 @@ struct tcb *tcp;
}
int
+sys_mkdirat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", %#lo", tcp->u_arg[2]);
+ }
+ return 0;
+}
+
+int
sys_rmdir(tcp)
struct tcb *tcp;
{
@@ -1757,6 +1830,70 @@ struct tcb *tcp;
return 0;
}
+static const struct xlat unlinkatflags[] = {
+ { AT_REMOVEDIR, "AT_REMOVEDIR" },
+ { 0, NULL },
+};
+
+int
+sys_linkat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ printdfd(tcp->u_arg[2]);
+ printpath(tcp, tcp->u_arg[3]);
+ tprintf(", %ld", tcp->u_arg[4]);
+ }
+ return 0;
+}
+
+int
+sys_unlinkat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ printflags(unlinkatflags, tcp->u_arg[2], "AT_???");
+ }
+ return 0;
+}
+
+int
+sys_symlinkat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printpath(tcp, tcp->u_arg[0]);
+ tprintf(", ");
+ printdfd(tcp->u_arg[1]);
+ printpath(tcp, tcp->u_arg[2]);
+ }
+ return 0;
+}
+
+int
+sys_readlinkat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ } else {
+ if (syserror(tcp))
+ tprintf("%#lx", tcp->u_arg[2]);
+ else
+ printpathn(tcp, tcp->u_arg[2], tcp->u_rval);
+ tprintf(", %lu", tcp->u_arg[3]);
+ }
+ return 0;
+}
+
int
sys_symlink(tcp)
struct tcb *tcp;
@@ -1799,6 +1936,20 @@ struct tcb *tcp;
}
int
+sys_renameat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ printdfd(tcp->u_arg[2]);
+ printpath(tcp, tcp->u_arg[3]);
+ }
+ return 0;
+}
+
+int
sys_chown(tcp)
struct tcb *tcp;
{
@@ -1810,6 +2001,29 @@ struct tcb *tcp;
return 0;
}
+#ifdef LINUX
+int
+sys_fchownat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ printuid(", ", tcp->u_arg[2]);
+ printuid(", ", tcp->u_arg[3]);
+ tprintf(", ");
+ if (tcp->u_arg[4] & AT_SYMLINK_NOFOLLOW) {
+ tprintf("AT_SYMLINK_NOFOLLOW");
+ if (tcp->u_arg[4] & ~AT_SYMLINK_NOFOLLOW)
+ tprintf("|");
+ }
+ if (tcp->u_arg[4] == 0 || (tcp->u_arg[4] & ~AT_SYMLINK_NOFOLLOW))
+ tprintf("%lx", tcp->u_arg[4]);
+ }
+ return 0;
+}
+#endif
+
int
sys_fchown(tcp)
struct tcb *tcp;
@@ -1833,6 +2050,20 @@ struct tcb *tcp;
return 0;
}
+#ifdef LINUX
+int
+sys_fchmodat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", %#lo", tcp->u_arg[2]);
+ }
+ return 0;
+}
+#endif
+
int
sys_fchmod(tcp)
struct tcb *tcp;
@@ -1869,6 +2103,21 @@ struct tcb *tcp;
return 0;
}
+#ifdef LINUX
+int
+sys_futimesat(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", ");
+ printtv(tcp, tcp->u_arg[2]);
+ }
+ return 0;
+}
+#endif
+
int
sys_utime(tcp)
struct tcb *tcp;
@@ -1923,6 +2111,36 @@ struct tcb *tcp;
}
int
+sys_mknodat(tcp)
+struct tcb *tcp;
+{
+ int mode = tcp->u_arg[2];
+
+ if (entering(tcp)) {
+ printdfd(tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprintf(", %s", sprintmode(mode));
+ switch (mode & S_IFMT) {
+ case S_IFCHR: case S_IFBLK:
+#ifdef LINUXSPARC
+ if (current_personality == 1)
+ tprintf(", makedev(%lu, %lu)",
+ (unsigned long) ((tcp->u_arg[3] >> 18) & 0x3fff),
+ (unsigned long) (tcp->u_arg[3] & 0x3ffff));
+ else
+#endif
+ tprintf(", makedev(%lu, %lu)",
+ (unsigned long) major(tcp->u_arg[3]),
+ (unsigned long) minor(tcp->u_arg[3]));
+ break;
+ default:
+ break;
+ }
+ }
+ return 0;
+}
+
+int
sys_mkfifo(tcp)
struct tcb *tcp;
{
diff -rup strace.current/linux/syscall.h strace/linux/syscall.h
--- strace.current/linux/syscall.h 2006-03-27 18:57:22.000000000 +0200
+++ strace/linux/syscall.h 2006-03-27 23:33:07.000000000 +0200
@@ -115,6 +115,12 @@ int sys_query_module();
int sys_poll();
int sys_mincore();
+/* the 13 openat syscalls and pselect6 */
+int sys_openat(), sys_mkdirat(), sys_mknodat(), sys_fchownat();
+int sys_futimesat(), sys_fstatat(), sys_unlinkat(), sys_renameat();
+int sys_linkat(), sys_symlinkat(), sys_readlinkat();
+int sys_fchmodat(), sys_faccessat(), sys_pselect6();
+
/* architecture-specific calls */
#ifdef ALPHA
int sys_osf_select();

65
strace-pselect6.patch Normal file
View File

@ -0,0 +1,65 @@
Extracted changelog (to only include the pselect6 changes):
2006-01-22 Ulrich Drepper <drepper@redhat.com>
* defs.h: Declare sprintsigmask.
* desc.c (sys_pselect): New function.
* signal.c: Export sprintsigmask.
Hooking up the new function is done in the syscalls.diff
Origin:
pselect6 syscall from attachment
https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=123547
of bug:
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=178633
--- strace-4.5.14-old/signal.c 2006-01-12 14:34:50.000000000 -0800
+++ strace-4.5.14/signal.c 2006-01-20 22:03:27.000000000 -0800
@@ -313,7 +313,7 @@ int len;
#define copy_sigset(tcp, addr, s) copy_sigset_len(tcp, addr, s, sizeof(sigset_t))
#endif
-static char *
+char *
sprintsigmask(s, mask, rt)
char *s;
sigset_t *mask;
--- strace-4.5.14-old/defs.h 2006-01-12 02:18:53.000000000 -0800
+++ strace-4.5.14/defs.h 2006-01-20 22:01:25.000000000 -0800
@@ -462,6 +462,7 @@ extern int sigishandled P((struct tcb *,
extern void printcall P((struct tcb *));
extern const char *signame P((int));
extern void printsignal P((int));
+extern char *sprintsigmask P((char *, sigset_t *, int));
extern void printleader P((struct tcb *));
extern void printtrailer P((struct tcb *));
extern void tabto P((int));
--- strace-4.5.14-old/desc.c 2005-06-01 12:22:07.000000000 -0700
+++ strace-4.5.14/desc.c 2006-01-20 22:09:31.000000000 -0800
@@ -871,3 +871,25 @@ int
long *args = tcp->u_arg;
return decode_select(tcp, args, 0);
}
+
+#ifdef LINUX
+int
+sys_pselect6(tcp)
+struct tcb *tcp;
+{
+ int rc = decode_select(tcp, tcp->u_arg, 0);
+ if (exiting(tcp)) {
+ struct {
+ void *ss;
+ size_t len;
+ } data;
+ sigset_t ss;
+ if (umove(tcp, tcp->u_arg[5], &data) < 0
+ || umoven(tcp, data.ss, data.len, &ss) < 0)
+ tprintf("{?}, ?");
+ else
+ tprintf(", %s, %zu", sprintsigmask("", &ss, 1), data.len);
+ }
+ return rc;
+}
+#endif

25
strace-s390minusi.patch Normal file
View File

@ -0,0 +1,25 @@
--- util.c
+++ util.c
@@ -1137,6 +1137,22 @@
return;
}
tprintf("[%08lx] ", pc);
+#elif defined(S390X)
+ long pc;
+
+ if (upeek(tcp->pid, PT_PSWADDR, &pc) < 0) {
+ tprintf("[????????????????] ");
+ return;
+ }
+ tprintf("[%016lx] ", pc);
+#elif defined(S390)
+ long pc;
+
+ if (upeek(tcp->pid, PT_PSWADDR, &pc) < 0) {
+ tprintf("[????????] ");
+ return;
+ }
+ tprintf("[%08lx] ", pc);
#endif /* !architecture */
#endif /* LINUX */

32
strace-sysinfo.diff Normal file
View File

@ -0,0 +1,32 @@
resource.c | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletion(-)
Index: resource.c
===================================================================
--- resource.c.orig 2005-10-28 14:04:55.000000000 +0200
+++ resource.c 2005-10-31 18:19:31.000000000 +0100
@@ -36,6 +36,7 @@
#ifdef LINUX
#include <sys/times.h>
#include <linux/kernel.h>
+#include <linux/version.h>
#include <sys/quota.h>
#endif /* LINUX */
#ifdef SUNOS4
@@ -386,10 +387,15 @@ struct tcb *tcp;
si.loads[2]);
tprintf("totalram=%lu, freeram=%lu, ",
si.totalram, si.freeram);
- tprintf("sharedram=%lu, bufferram=%lu} ",
+ tprintf("sharedram=%lu, bufferram=%lu, ",
si.sharedram, si.bufferram);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,3,48)
tprintf("totalswap=%lu, freeswap=%lu, procs=%hu}",
si.totalswap, si.freeswap, si.procs);
+#else
+ tprintf("totalswap=%lu, freeswap=%lu, procs=%hu, mem_unit=%u}",
+ si.totalswap, si.freeswap, si.procs, si.mem_unit);
+#endif
}
}
return 0;

539
strace.changes Normal file
View File

@ -0,0 +1,539 @@
-------------------------------------------------------------------
Mon Oct 9 15:22:08 CEST 2006 - schwab@suse.de
- Fix compilation with 2.6.18 kernel headers.
-------------------------------------------------------------------
Fri Sep 29 10:52:03 CEST 2006 - schwab@suse.de
- Fix use of PT_GETSIGINFO.
-------------------------------------------------------------------
Fri Sep 8 23:27:35 CEST 2006 - schwab@suse.de
- Fix last change.
-------------------------------------------------------------------
Thu Sep 7 17:22:38 CEST 2006 - schwab@suse.de
- Add fixes from repository.
-------------------------------------------------------------------
Wed May 31 11:12:11 CEST 2006 - schwab@suse.de
- Fix missing arguments.
-------------------------------------------------------------------
Sat Apr 29 16:04:24 CEST 2006 - schwab@suse.de
- Add *at syscalls on ppc.
-------------------------------------------------------------------
Thu Apr 27 00:27:06 CEST 2006 - schwab@suse.de
- Fix socket/ipc subcall decoding.
- Fix ioctl decoding.
-------------------------------------------------------------------
Wed Apr 5 22:55:48 CEST 2006 - schwab@suse.de
- Fix last change so it doesn't break ia64.
- Add all other missing syscalls.
-------------------------------------------------------------------
Fri Mar 31 16:03:10 CEST 2006 - bk@suse.de
- add parsing for the 13 *at syscalls and pselect6(i386 and x86_84)
-------------------------------------------------------------------
Sat Mar 4 19:53:41 CET 2006 - schwab@suse.de
- Update to strace 4.5.14 (numerous bug fixes, required to support new
kernel features).
-------------------------------------------------------------------
Wed Jan 25 21:30:58 CET 2006 - mls@suse.de
- converted neededforbuild to BuildRequires
-------------------------------------------------------------------
Mon Nov 7 17:42:33 CET 2005 - schwab@suse.de
- Follow all fork-like syscalls in strace-graph.
-------------------------------------------------------------------
Mon Oct 31 19:14:00 CET 2005 - od@suse.de
- add struct sysinfo member mem_unit for linux >= 2.3.48
-------------------------------------------------------------------
Fri Oct 28 16:21:49 CEST 2005 - dmueller@suse.de
- actually add inotify support
-------------------------------------------------------------------
Thu Oct 13 15:54:23 CEST 2005 - schwab@suse.de
- Add more syscall entries.
-------------------------------------------------------------------
Fri Oct 7 18:04:40 CEST 2005 - schwab@suse.de
- Fix decoding of IPC syscalls.
-------------------------------------------------------------------
Thu Jul 21 10:48:21 CEST 2005 - schwab@suse.de
- Update quota patch.
-------------------------------------------------------------------
Wed Jun 22 14:47:01 CEST 2005 - schwab@suse.de
- Fix decoding of gettid.
-------------------------------------------------------------------
Mon Jun 20 11:10:18 CEST 2005 - schwab@suse.de
- Update to strace 4.5.12.
-------------------------------------------------------------------
Wed Mar 30 11:25:23 CEST 2005 - schwab@suse.de
- Update to strace 4.5.11.
-------------------------------------------------------------------
Wed Mar 16 15:07:40 CET 2005 - schwab@suse.de
- Update to strace 4.5.10.
-------------------------------------------------------------------
Mon Feb 28 00:05:53 CET 2005 - schwab@suse.de
- Fix getrval2 on ia64.
-------------------------------------------------------------------
Fri Feb 4 15:49:50 CET 2005 - schwab@suse.de
- Update to strace 4.5.9.
-------------------------------------------------------------------
Sat Jan 22 17:33:05 CET 2005 - schwab@suse.de
- Fix getsockopt decoding.
-------------------------------------------------------------------
Tue Dec 7 16:15:05 CET 2004 - uli@suse.de
- added -i support on s390*
-------------------------------------------------------------------
Fri Nov 12 01:15:11 CET 2004 - schwab@suse.de
- Update to strace 4.5.8.
-------------------------------------------------------------------
Tue Aug 31 14:02:13 CEST 2004 - schwab@suse.de
- Update to strace 4.5.7.
-------------------------------------------------------------------
Mon Jul 12 21:38:24 CEST 2004 - schwab@suse.de
- Update to strace 4.5.6.
-------------------------------------------------------------------
Mon Jun 28 14:54:36 CEST 2004 - schwab@suse.de
- Update to strace 4.5.5.
-------------------------------------------------------------------
Sat Jun 5 14:44:55 CEST 2004 - schwab@suse.de
- Update to strace 4.5.4.
-------------------------------------------------------------------
Wed May 5 23:41:34 CEST 2004 - schwab@suse.de
- Fix handing of execve [#38479].
-------------------------------------------------------------------
Sat Apr 17 20:33:45 CEST 2004 - schwab@suse.de
- Update to strace 4.5.3.
-------------------------------------------------------------------
Mon Apr 5 23:41:59 CEST 2004 - schwab@suse.de
- Sign extend pid in sys_kill [#38433].
-------------------------------------------------------------------
Mon Mar 8 12:07:41 CET 2004 - schwab@suse.de
- Update to strace 4.5.2, incorporates all recent changes.
-------------------------------------------------------------------
Thu Feb 26 17:40:22 CET 2004 - schwab@suse.de
- Update from CVS.
- Fix decoding of pipe syscall.
-------------------------------------------------------------------
Thu Jan 15 12:09:51 CET 2004 - schwab@suse.de
- Fix use of kernel headers.
-------------------------------------------------------------------
Wed Nov 26 13:32:41 CET 2003 - schwab@suse.de
- Update to strace 4.5.1.
-------------------------------------------------------------------
Tue Oct 7 22:39:19 CEST 2003 - schwab@suse.de
- Fix building with new kernel headers.
-------------------------------------------------------------------
Thu Sep 25 14:33:56 CEST 2003 - schwab@suse.de
- Update to strace 4.5.
-------------------------------------------------------------------
Tue Aug 5 18:50:10 CEST 2003 - ro@suse.de
- fix compile with new quota include header
-------------------------------------------------------------------
Wed Jun 11 13:06:05 CEST 2003 - schwab@suse.de
- Update to strace 4.4.98.
-------------------------------------------------------------------
Sat May 10 17:11:46 CEST 2003 - schwab@suse.de
- Fix modify_ldt_ldt_s -> user_desc.
-------------------------------------------------------------------
Fri May 9 20:47:08 CEST 2003 - schwab@suse.de
- Fix building with new kernel headers.
-------------------------------------------------------------------
Wed Apr 2 17:51:04 CEST 2003 - schwab@suse.de
- Update to 4.4.94.
-------------------------------------------------------------------
Mon Jan 20 16:02:19 CET 2003 - schwab@suse.de
- Update to 4.4.92.
-------------------------------------------------------------------
Mon Nov 18 01:04:10 CET 2002 - ro@suse.de
- fix build with latest autoconf
-------------------------------------------------------------------
Thu Nov 7 18:07:48 CET 2002 - schwab@suse.de
- Fix ia64 aio syscalls.
-------------------------------------------------------------------
Tue Nov 5 18:56:33 CET 2002 - schwab@suse.de
- Last change extended to s390/s390x.
-------------------------------------------------------------------
Wed Oct 23 14:31:41 CEST 2002 - schwab@suse.de
- Basic support for aio syscalls.
-------------------------------------------------------------------
Tue Oct 8 15:49:16 CEST 2002 - froh@suse.de
- s390/s390x: add fix for obscure problem in the inner workings of
strace, symptom was SIGSEGV on e.g. 'strace getfacl .' (#20447)
-------------------------------------------------------------------
Thu Sep 26 21:33:31 CEST 2002 - schwab@suse.de
- Add support for xattr syscalls [#18051].
- Update ia64 patch.
-------------------------------------------------------------------
Thu Sep 19 16:03:21 CEST 2002 - mludvig@suse.cz
- fixed old_mmap argument printing on x86-64
-------------------------------------------------------------------
Tue Sep 17 17:34:28 CEST 2002 - ro@suse.de
- removed bogus self-provides
-------------------------------------------------------------------
Thu Sep 12 16:03:32 CEST 2002 - meissner@suse.de
- Added ppc64 support.
-------------------------------------------------------------------
Thu Sep 12 13:28:02 CEST 2002 - uli@suse.de
- added x86-64 biarch support by mludvig as reqd. by aj
-------------------------------------------------------------------
Mon Aug 12 21:28:21 CEST 2002 - schwab@suse.de
- Add fixes for s390/s390x.
-------------------------------------------------------------------
Mon Jun 24 16:08:14 CEST 2002 - schwab@suse.de
- Fix ioctl decoding on ppc.
-------------------------------------------------------------------
Tue Apr 23 16:19:01 CEST 2002 - schwab@suse.de
- Fix ipc syscall decoding for architectures not using the ipc dispatcher.
-------------------------------------------------------------------
Mon Apr 22 13:00:53 CEST 2002 - schwab@suse.de
- Cleanup x86-64 patch.
- Use autoreconf.
-------------------------------------------------------------------
Mon Apr 22 09:36:11 CEST 2002 - sf@suse.de
- added support for x86-64 (by ak@suse.de)
- added %{suse_update_config}
-------------------------------------------------------------------
Mon Mar 4 14:54:03 CET 2002 - schwab@suse.de
- Fix displaying of terminal ioctls [#14396].
-------------------------------------------------------------------
Wed Nov 21 17:31:08 CET 2001 - schwab@suse.de
- Run autoconf to get up-to-date configure script.
-------------------------------------------------------------------
Fri Nov 9 12:02:54 CET 2001 - schwab@suse.de
- Don't use <linux/module.h>.
-------------------------------------------------------------------
Mon Aug 20 13:53:05 CEST 2001 - schwab@suse.de
- Fix configuration for s390.
-------------------------------------------------------------------
Mon Aug 20 09:45:34 CEST 2001 - schwab@suse.de
- Update to strace 4.4.
-------------------------------------------------------------------
Tue Jul 31 10:55:06 CEST 2001 - schwab@suse.de
- Fix tracing after execve for ia64.
-------------------------------------------------------------------
Tue Jun 12 10:58:49 CEST 2001 - schwab@suse.de
- Fix for ppc and sparc.
-------------------------------------------------------------------
Fri Jun 8 16:32:31 CEST 2001 - schwab@suse.de
- Update to strace 4.3.
-------------------------------------------------------------------
Mon May 14 23:16:11 CEST 2001 - bk@suse.de
- fix long shifts to create long long logs for llseek, pread and pwrite.
(for 2147483748[2GB+100], strace logged 18446744071562068068 which is wrong)
-------------------------------------------------------------------
Wed Mar 7 12:16:34 CET 2001 - schwab@suse.de
- Update IA64 patch.
-------------------------------------------------------------------
Wed Feb 14 02:35:51 CET 2001 - ro@suse.de
- include time.h to fix compilation
-------------------------------------------------------------------
Thu Jan 4 18:27:04 CET 2001 - stepan@suse.de
- changed specfile to build cleanly on alphas
-------------------------------------------------------------------
Wed Dec 6 14:56:15 CET 2000 - schwab@suse.de
- Don't include <asm/sigcontext.h> on ia64.
- Implement {,f,l}stat on ia64.
-------------------------------------------------------------------
Mon Nov 13 11:57:14 CET 2000 - ro@suse.de
- hacked to compile on 2.4 includes
-------------------------------------------------------------------
Tue Sep 26 01:07:23 CEST 2000 - ro@suse.de
- fixed dirent64 clash for all archs
-------------------------------------------------------------------
Mon Sep 18 10:57:10 CEST 2000 - schwab@suse.de
- Fix clash with struct dirent64.
-------------------------------------------------------------------
Wed Sep 6 17:20:46 CEST 2000 - fober@suse.de
- s390: upgrade to current ibm codedrop for s390
-------------------------------------------------------------------
Mon Aug 14 18:44:30 CEST 2000 - schwab@suse.de
- Update ia64 patches.
-------------------------------------------------------------------
Tue Jun 20 14:15:40 CEST 2000 - schwab@suse.de
- Update ia64 patches.
-------------------------------------------------------------------
Mon Jun 19 00:27:55 CEST 2000 - ro@suse.de
- prevent inclusion of linux/time.h
-------------------------------------------------------------------
Thu May 18 14:06:55 CEST 2000 - schwab@suse.de
- Fixed to build with 2.3.99 kernels.
-------------------------------------------------------------------
Wed Apr 12 10:40:34 CEST 2000 - kukuk@suse.de
- Fix define for STAT64
-------------------------------------------------------------------
Thu Apr 6 19:09:04 MEST 2000 - bk@suse.de
- s390 team added s390 patch
-------------------------------------------------------------------
Tue Mar 28 14:00:08 CEST 2000 - schwab@suse.de
- Add ia64 patches.
-------------------------------------------------------------------
Wed Mar 22 16:50:21 CET 2000 - kukuk@suse.de
- Update to 4.2
- Fixes for SPARC
-------------------------------------------------------------------
Tue Jan 18 16:43:41 CET 2000 - ro@suse.de
- fixed to build with 2.3 kernels
- man -> /usr/share/man
-------------------------------------------------------------------
Thu Dec 9 13:42:00 CET 1999 - schwab@suse.de
- Remove obsolete SNDCTL_TMR_* ioctls that mask termios ioctls
- Remove obsolete strerror and strsignal changes
- Fix #if syntax
-------------------------------------------------------------------
Sun Dec 5 17:31:42 CET 1999 - kasal@suse.de
- upgraded to strace-4.1
-------------------------------------------------------------------
Fri Dec 3 19:01:25 CET 1999 - kasal@suse.de
- get rid of Makefile.Linux
- fixed some headers for sparc & 2.3.x kernel
-------------------------------------------------------------------
Mon Sep 13 17:23:57 CEST 1999 - bs@suse.de
- ran old prepare_spec on spec file to switch to new prepare_spec.
-------------------------------------------------------------------
Thu Sep 9 18:25:30 CEST 1999 - uli@suse.de
- fixed for PPC
-------------------------------------------------------------------
Fri Aug 27 12:02:57 CEST 1999 - ro@suse.de
- adapt to sysctl-changes
-------------------------------------------------------------------
Fri Jul 9 20:04:03 MEST 1999 - ro@suse.de
- update to 4.0 using jurix diff
-------------------------------------------------------------------
Tue Apr 13 00:53:25 MEST 1999 - ro@suse.de
- update 3.1.0.1 / merge patches
-------------------------------------------------------------------
Mon Apr 12 23:08:37 MEST 1999 - ro@suse.de
- fixed for alpha
-------------------------------------------------------------------
Wed Mar 31 00:46:22 MEST 1999 - ro@suse.de
- merged path from Stanislav Brabec and Massimiliano Ghilardi
-------------------------------------------------------------------
Tue Mar 9 08:28:59 MET 1999 - ro@suse.de
- back to SYS_vfork
-------------------------------------------------------------------
Thu Jan 14 14:05:15 MET 1999 - ro@suse.de
- changed "ifdef SYS_vfork" to "ifdef __NR_vfork"
-------------------------------------------------------------------
Mon Jan 11 11:48:17 MET 1999 - ro@suse.de
- alpha-patches file.c: comment #if alpha
sock.c: include ioctls for alpha
term.c: include termio on alpha as well
-------------------------------------------------------------------
Mon Nov 16 10:45:29 MET 1998 - ro@suse.de
- system.c: include sys/mount.h instead of linux/fs.h for glibc
-------------------------------------------------------------------
Wed Sep 30 11:51:34 MEST 1998 - ro@suse.de
- if glibc: include sys/reg and linux/ptrace where needed
-------------------------------------------------------------------
Fri Jul 24 12:04:34 MEST 1998 - bs@suse.de
- fixed configure for i686.
-------------------------------------------------------------------
Tue Feb 17 13:45:15 MET 1998 - ro@suse.de
- diabled PRCTL in config.h.in (not with 2.0 kernel)
----------------------------------------------------------------------------
Wed Apr 30 15:57:14 CEST 1997 - florian@suse.de
- add bug-fixes for llseek

313
strace.spec Normal file
View File

@ -0,0 +1,313 @@
#
# spec file for package strace (Version 4.5.14)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: strace
BuildRequires: libacl-devel
License: Other License(s), see package
Group: Development/Tools/Debuggers
Autoreqprov: on
Version: 4.5.14
Release: 25
Summary: A utility to trace the system calls of a program
Source: strace-%{version}.tar.bz2
Patch99: strace-cvs.diff
Patch: strace-%{version}.diff
Patch2: warn.patch
Patch3: strace-s390minusi.patch
Patch6: syscalls.diff
Patch7: proper_inotify.diff
Patch8: strace-sysinfo.diff
Patch9: strace-graph.diff
Patch10: strace-openat-syscalls.patch
Patch11: strace-pselect6.patch
Patch13: ioctl.diff
Patch14: fstatat-ppc64.patch
URL: http://www.liacs.nl/~wichert/strace/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
With strace, you can trace the activity of a program. Information
about any system calls the program makes and the signals it receives
and processes can be seen. Child processes can also be tracked.
Authors:
--------
Paul Kranenburg <pk@cs.few.eur.nl>
Branko Lankester <branko@hacktic.nl>
Rick Sladkey <rs@world.std.com>
%prep
%setup -q
%patch99
%patch
%patch2
%patch3
%patch6
%patch7
%patch8
%patch9
%patch10 -p1
%patch11 -p1
%patch13
%patch14
%build
%{suse_update_config -f}
autoreconf -fi
export CFLAGS="-Wall $RPM_OPT_FLAGS -pipe"
%ifarch alpha
CFLAGS="$CFLAGS -ffixed-8"
%endif
./configure --prefix=%{_prefix} --mandir=%{_mandir}
make
%install
make install DESTDIR=$RPM_BUILD_ROOT
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%doc README README-linux NEWS
%{_prefix}/bin/strace
%{_prefix}/bin/strace-graph
%doc %{_mandir}/man1/strace.1.gz
%changelog -n strace
* Mon Oct 09 2006 - schwab@suse.de
- Fix compilation with 2.6.18 kernel headers.
* Fri Sep 29 2006 - schwab@suse.de
- Fix use of PT_GETSIGINFO.
* Fri Sep 08 2006 - schwab@suse.de
- Fix last change.
* Thu Sep 07 2006 - schwab@suse.de
- Add fixes from repository.
* Wed May 31 2006 - schwab@suse.de
- Fix missing arguments.
* Sat Apr 29 2006 - schwab@suse.de
- Add *at syscalls on ppc.
* Thu Apr 27 2006 - schwab@suse.de
- Fix socket/ipc subcall decoding.
- Fix ioctl decoding.
* Wed Apr 05 2006 - schwab@suse.de
- Fix last change so it doesn't break ia64.
- Add all other missing syscalls.
* Fri Mar 31 2006 - bk@suse.de
- add parsing for the 13 *at syscalls and pselect6(i386 and x86_84)
* Sat Mar 04 2006 - schwab@suse.de
- Update to strace 4.5.14 (numerous bug fixes, required to support new
kernel features).
* Wed Jan 25 2006 - mls@suse.de
- converted neededforbuild to BuildRequires
* Mon Nov 07 2005 - schwab@suse.de
- Follow all fork-like syscalls in strace-graph.
* Mon Oct 31 2005 - od@suse.de
- add struct sysinfo member mem_unit for linux >= 2.3.48
* Fri Oct 28 2005 - dmueller@suse.de
- actually add inotify support
* Thu Oct 13 2005 - schwab@suse.de
- Add more syscall entries.
* Fri Oct 07 2005 - schwab@suse.de
- Fix decoding of IPC syscalls.
* Thu Jul 21 2005 - schwab@suse.de
- Update quota patch.
* Wed Jun 22 2005 - schwab@suse.de
- Fix decoding of gettid.
* Mon Jun 20 2005 - schwab@suse.de
- Update to strace 4.5.12.
* Wed Mar 30 2005 - schwab@suse.de
- Update to strace 4.5.11.
* Wed Mar 16 2005 - schwab@suse.de
- Update to strace 4.5.10.
* Mon Feb 28 2005 - schwab@suse.de
- Fix getrval2 on ia64.
* Fri Feb 04 2005 - schwab@suse.de
- Update to strace 4.5.9.
* Sat Jan 22 2005 - schwab@suse.de
- Fix getsockopt decoding.
* Tue Dec 07 2004 - uli@suse.de
- added -i support on s390*
* Fri Nov 12 2004 - schwab@suse.de
- Update to strace 4.5.8.
* Tue Aug 31 2004 - schwab@suse.de
- Update to strace 4.5.7.
* Mon Jul 12 2004 - schwab@suse.de
- Update to strace 4.5.6.
* Mon Jun 28 2004 - schwab@suse.de
- Update to strace 4.5.5.
* Sat Jun 05 2004 - schwab@suse.de
- Update to strace 4.5.4.
* Wed May 05 2004 - schwab@suse.de
- Fix handing of execve [#38479].
* Sat Apr 17 2004 - schwab@suse.de
- Update to strace 4.5.3.
* Mon Apr 05 2004 - schwab@suse.de
- Sign extend pid in sys_kill [#38433].
* Mon Mar 08 2004 - schwab@suse.de
- Update to strace 4.5.2, incorporates all recent changes.
* Thu Feb 26 2004 - schwab@suse.de
- Update from CVS.
- Fix decoding of pipe syscall.
* Thu Jan 15 2004 - schwab@suse.de
- Fix use of kernel headers.
* Wed Nov 26 2003 - schwab@suse.de
- Update to strace 4.5.1.
* Tue Oct 07 2003 - schwab@suse.de
- Fix building with new kernel headers.
* Thu Sep 25 2003 - schwab@suse.de
- Update to strace 4.5.
* Tue Aug 05 2003 - ro@suse.de
- fix compile with new quota include header
* Wed Jun 11 2003 - schwab@suse.de
- Update to strace 4.4.98.
* Sat May 10 2003 - schwab@suse.de
- Fix modify_ldt_ldt_s -> user_desc.
* Fri May 09 2003 - schwab@suse.de
- Fix building with new kernel headers.
* Wed Apr 02 2003 - schwab@suse.de
- Update to 4.4.94.
* Mon Jan 20 2003 - schwab@suse.de
- Update to 4.4.92.
* Mon Nov 18 2002 - ro@suse.de
- fix build with latest autoconf
* Thu Nov 07 2002 - schwab@suse.de
- Fix ia64 aio syscalls.
* Tue Nov 05 2002 - schwab@suse.de
- Last change extended to s390/s390x.
* Wed Oct 23 2002 - schwab@suse.de
- Basic support for aio syscalls.
* Tue Oct 08 2002 - froh@suse.de
- s390/s390x: add fix for obscure problem in the inner workings of
strace, symptom was SIGSEGV on e.g. 'strace getfacl .' (#20447)
* Thu Sep 26 2002 - schwab@suse.de
- Add support for xattr syscalls [#18051].
- Update ia64 patch.
* Thu Sep 19 2002 - mludvig@suse.cz
- fixed old_mmap argument printing on x86-64
* Tue Sep 17 2002 - ro@suse.de
- removed bogus self-provides
* Thu Sep 12 2002 - meissner@suse.de
- Added ppc64 support.
* Thu Sep 12 2002 - uli@suse.de
- added x86-64 biarch support by mludvig as reqd. by aj
* Mon Aug 12 2002 - schwab@suse.de
- Add fixes for s390/s390x.
* Mon Jun 24 2002 - schwab@suse.de
- Fix ioctl decoding on ppc.
* Tue Apr 23 2002 - schwab@suse.de
- Fix ipc syscall decoding for architectures not using the ipc dispatcher.
* Mon Apr 22 2002 - schwab@suse.de
- Cleanup x86-64 patch.
- Use autoreconf.
* Mon Apr 22 2002 - sf@suse.de
- added support for x86-64 (by ak@suse.de)
- added %%{suse_update_config}
* Mon Mar 04 2002 - schwab@suse.de
- Fix displaying of terminal ioctls [#14396].
* Wed Nov 21 2001 - schwab@suse.de
- Run autoconf to get up-to-date configure script.
* Fri Nov 09 2001 - schwab@suse.de
- Don't use <linux/module.h>.
* Mon Aug 20 2001 - schwab@suse.de
- Fix configuration for s390.
* Mon Aug 20 2001 - schwab@suse.de
- Update to strace 4.4.
* Tue Jul 31 2001 - schwab@suse.de
- Fix tracing after execve for ia64.
* Tue Jun 12 2001 - schwab@suse.de
- Fix for ppc and sparc.
* Fri Jun 08 2001 - schwab@suse.de
- Update to strace 4.3.
* Mon May 14 2001 - bk@suse.de
- fix long shifts to create long long logs for llseek, pread and pwrite.
(for 2147483748[2GB+100], strace logged 18446744071562068068 which is wrong)
* Wed Mar 07 2001 - schwab@suse.de
- Update IA64 patch.
* Wed Feb 14 2001 - ro@suse.de
- include time.h to fix compilation
* Thu Jan 04 2001 - stepan@suse.de
- changed specfile to build cleanly on alphas
* Wed Dec 06 2000 - schwab@suse.de
- Don't include <asm/sigcontext.h> on ia64.
- Implement {,f,l}stat on ia64.
* Mon Nov 13 2000 - ro@suse.de
- hacked to compile on 2.4 includes
* Tue Sep 26 2000 - ro@suse.de
- fixed dirent64 clash for all archs
* Mon Sep 18 2000 - schwab@suse.de
- Fix clash with struct dirent64.
* Wed Sep 06 2000 - fober@suse.de
- s390: upgrade to current ibm codedrop for s390
* Mon Aug 14 2000 - schwab@suse.de
- Update ia64 patches.
* Tue Jun 20 2000 - schwab@suse.de
- Update ia64 patches.
* Mon Jun 19 2000 - ro@suse.de
- prevent inclusion of linux/time.h
* Thu May 18 2000 - schwab@suse.de
- Fixed to build with 2.3.99 kernels.
* Wed Apr 12 2000 - kukuk@suse.de
- Fix define for STAT64
* Thu Apr 06 2000 - bk@suse.de
- s390 team added s390 patch
* Tue Mar 28 2000 - schwab@suse.de
- Add ia64 patches.
* Wed Mar 22 2000 - kukuk@suse.de
- Update to 4.2
- Fixes for SPARC
* Tue Jan 18 2000 - ro@suse.de
- fixed to build with 2.3 kernels
- man -> /usr/share/man
* Thu Dec 09 1999 - schwab@suse.de
- Remove obsolete SNDCTL_TMR_* ioctls that mask termios ioctls
- Remove obsolete strerror and strsignal changes
- Fix #if syntax
* Sun Dec 05 1999 - kasal@suse.de
- upgraded to strace-4.1
* Fri Dec 03 1999 - kasal@suse.de
- get rid of Makefile.Linux
- fixed some headers for sparc & 2.3.x kernel
* Mon Sep 13 1999 - bs@suse.de
- ran old prepare_spec on spec file to switch to new prepare_spec.
* Thu Sep 09 1999 - uli@suse.de
- fixed for PPC
* Fri Aug 27 1999 - ro@suse.de
- adapt to sysctl-changes
* Fri Jul 09 1999 - ro@suse.de
- update to 4.0 using jurix diff
* Tue Apr 13 1999 - ro@suse.de
- update 3.1.0.1 / merge patches
* Mon Apr 12 1999 - ro@suse.de
- fixed for alpha
* Wed Mar 31 1999 - ro@suse.de
- merged path from Stanislav Brabec and Massimiliano Ghilardi
* Tue Mar 09 1999 - ro@suse.de
- back to SYS_vfork
* Thu Jan 14 1999 - ro@suse.de
- changed "ifdef SYS_vfork" to "ifdef __NR_vfork"
* Mon Jan 11 1999 - ro@suse.de
- alpha-patches file.c: comment #if alpha
sock.c: include ioctls for alpha
term.c: include termio on alpha as well
* Mon Nov 16 1998 - ro@suse.de
- system.c: include sys/mount.h instead of linux/fs.h for glibc
* Wed Sep 30 1998 - ro@suse.de
- if glibc: include sys/reg and linux/ptrace where needed
* Fri Jul 24 1998 - bs@suse.de
- fixed configure for i686.
* Tue Feb 17 1998 - ro@suse.de
- diabled PRCTL in config.h.in (not with 2.0 kernel)
* Wed Apr 30 1997 - florian@suse.de
- add bug-fixes for llseek

416
syscalls.diff Normal file
View File

@ -0,0 +1,416 @@
--- linux/alpha/syscallent.h
+++ linux/alpha/syscallent.h
@@ -467,3 +467,11 @@
{ 2, 0, sys_mq_notify, "mq_notify" }, /* 436 */
{ 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 437 */
{ 4, 0, printargs, "waitid" }, /* 438 */
+ { 5, 0, printargs, "add_key" }, /* 439 */
+ { 4, 0, printargs, "request_key" }, /* 440 */
+ { 5, 0, printargs, "keyctl" }, /* 441 */
+ { 3, 0, printargs, "ioprio_set" }, /* 442 */
+ { 2, 0, printargs, "ioprio_get" }, /* 443 */
+ { 0, 0, printargs, "inotify_init" }, /* 444 */
+ { 3, 0, printargs, "inotify_add_watch" }, /* 445 */
+ { 2, 0, printargs, "inotify_rm_watch" }, /* 446 */
--- linux/ia64/syscallent.h
+++ linux/ia64/syscallent.h
@@ -246,106 +246,6 @@
starts where that one leaves off.
*/
- { 8, 0, printargs, "SYS_343" }, /* 343 */
- { 8, 0, printargs, "SYS_344" }, /* 344 */
- { 8, 0, printargs, "SYS_345" }, /* 345 */
- { 8, 0, printargs, "SYS_346" }, /* 346 */
- { 8, 0, printargs, "SYS_347" }, /* 347 */
- { 8, 0, printargs, "SYS_348" }, /* 348 */
- { 8, 0, printargs, "SYS_349" }, /* 349 */
- { 8, 0, printargs, "SYS_350" }, /* 350 */
- { 8, 0, printargs, "SYS_351" }, /* 351 */
- { 8, 0, printargs, "SYS_352" }, /* 352 */
- { 8, 0, printargs, "SYS_353" }, /* 353 */
- { 8, 0, printargs, "SYS_354" }, /* 354 */
- { 8, 0, printargs, "SYS_355" }, /* 355 */
- { 8, 0, printargs, "SYS_356" }, /* 356 */
- { 8, 0, printargs, "SYS_357" }, /* 357 */
- { 8, 0, printargs, "SYS_358" }, /* 358 */
- { 8, 0, printargs, "SYS_359" }, /* 359 */
- { 8, 0, printargs, "SYS_360" }, /* 360 */
- { 8, 0, printargs, "SYS_361" }, /* 361 */
- { 8, 0, printargs, "SYS_362" }, /* 362 */
- { 8, 0, printargs, "SYS_363" }, /* 363 */
- { 8, 0, printargs, "SYS_364" }, /* 364 */
- { 8, 0, printargs, "SYS_365" }, /* 365 */
- { 8, 0, printargs, "SYS_366" }, /* 366 */
- { 8, 0, printargs, "SYS_367" }, /* 367 */
- { 8, 0, printargs, "SYS_368" }, /* 368 */
- { 8, 0, printargs, "SYS_369" }, /* 369 */
- { 8, 0, printargs, "SYS_370" }, /* 370 */
- { 8, 0, printargs, "SYS_371" }, /* 371 */
- { 8, 0, printargs, "SYS_372" }, /* 372 */
- { 8, 0, printargs, "SYS_373" }, /* 373 */
- { 8, 0, printargs, "SYS_374" }, /* 374 */
- { 8, 0, printargs, "SYS_375" }, /* 375 */
- { 8, 0, printargs, "SYS_376" }, /* 376 */
- { 8, 0, printargs, "SYS_377" }, /* 377 */
- { 8, 0, printargs, "SYS_378" }, /* 378 */
- { 8, 0, printargs, "SYS_379" }, /* 379 */
- { 8, 0, printargs, "SYS_380" }, /* 380 */
- { 8, 0, printargs, "SYS_381" }, /* 381 */
- { 8, 0, printargs, "SYS_382" }, /* 382 */
- { 8, 0, printargs, "SYS_383" }, /* 383 */
- { 8, 0, printargs, "SYS_384" }, /* 384 */
- { 8, 0, printargs, "SYS_385" }, /* 385 */
- { 8, 0, printargs, "SYS_386" }, /* 386 */
- { 8, 0, printargs, "SYS_387" }, /* 387 */
- { 8, 0, printargs, "SYS_388" }, /* 388 */
- { 8, 0, printargs, "SYS_389" }, /* 389 */
- { 8, 0, printargs, "SYS_390" }, /* 390 */
- { 8, 0, printargs, "SYS_391" }, /* 391 */
- { 8, 0, printargs, "SYS_392" }, /* 392 */
- { 8, 0, printargs, "SYS_393" }, /* 393 */
- { 8, 0, printargs, "SYS_394" }, /* 394 */
- { 8, 0, printargs, "SYS_395" }, /* 395 */
- { 8, 0, printargs, "SYS_396" }, /* 396 */
- { 8, 0, printargs, "SYS_397" }, /* 397 */
- { 8, 0, printargs, "SYS_398" }, /* 398 */
- { 8, 0, printargs, "SYS_399" }, /* 399 */
- { 8, 0, printargs, "SYS_400" }, /* 400 */
- { 8, 0, printargs, "SYS_401" }, /* 401 */
- { 8, 0, printargs, "SYS_402" }, /* 402 */
- { 8, 0, printargs, "SYS_403" }, /* 403 */
- { 8, 0, printargs, "SYS_404" }, /* 404 */
- { 8, 0, printargs, "SYS_405" }, /* 405 */
- { 8, 0, printargs, "SYS_406" }, /* 406 */
- { 8, 0, printargs, "SYS_407" }, /* 407 */
- { 8, 0, printargs, "SYS_408" }, /* 408 */
- { 8, 0, printargs, "SYS_409" }, /* 409 */
- { 8, 0, printargs, "SYS_410" }, /* 410 */
- { 8, 0, printargs, "SYS_411" }, /* 411 */
- { 8, 0, printargs, "SYS_412" }, /* 412 */
- { 8, 0, printargs, "SYS_413" }, /* 413 */
- { 8, 0, printargs, "SYS_414" }, /* 414 */
- { 8, 0, printargs, "SYS_415" }, /* 415 */
- { 8, 0, printargs, "SYS_416" }, /* 416 */
- { 8, 0, printargs, "SYS_417" }, /* 417 */
- { 8, 0, printargs, "SYS_418" }, /* 418 */
- { 8, 0, printargs, "SYS_419" }, /* 419 */
- { 8, 0, printargs, "SYS_420" }, /* 420 */
- { 8, 0, printargs, "SYS_421" }, /* 421 */
- { 8, 0, printargs, "SYS_422" }, /* 422 */
- { 8, 0, printargs, "SYS_423" }, /* 423 */
- { 8, 0, printargs, "SYS_424" }, /* 424 */
- { 8, 0, printargs, "SYS_425" }, /* 425 */
- { 8, 0, printargs, "SYS_426" }, /* 426 */
- { 8, 0, printargs, "SYS_427" }, /* 427 */
- { 8, 0, printargs, "SYS_428" }, /* 428 */
- { 8, 0, printargs, "SYS_429" }, /* 429 */
- { 8, 0, printargs, "SYS_430" }, /* 430 */
- { 8, 0, printargs, "SYS_431" }, /* 431 */
- { 8, 0, printargs, "SYS_432" }, /* 432 */
- { 8, 0, printargs, "SYS_433" }, /* 433 */
- { 8, 0, printargs, "SYS_434" }, /* 434 */
- { 8, 0, printargs, "SYS_435" }, /* 435 */
- { 8, 0, printargs, "SYS_436" }, /* 436 */
- { 8, 0, printargs, "SYS_437" }, /* 437 */
- { 8, 0, printargs, "SYS_438" }, /* 438 */
- { 8, 0, printargs, "SYS_439" }, /* 439 */
- { 8, 0, printargs, "SYS_440" }, /* 440 */
- { 8, 0, printargs, "SYS_441" }, /* 441 */
- { 8, 0, printargs, "SYS_442" }, /* 442 */
{ 8, 0, printargs, "SYS_443" }, /* 443 */
{ 8, 0, printargs, "SYS_444" }, /* 444 */
{ 8, 0, printargs, "SYS_445" }, /* 445 */
@@ -1174,32 +1074,32 @@
{ 5, 0, printargs, "sys_kexec_load" }, /* 1268 */
{ 5, 0, printargs, "vserver" }, /* 1269 */
{ 5, TP, sys_waitid, "waitid" }, /* 1270 */
- { 8, 0, printargs, "SYS_1271" }, /* 1271 */
- { 8, 0, printargs, "SYS_1272" }, /* 1272 */
- { 8, 0, printargs, "SYS_1273" }, /* 1273 */
- { 8, 0, printargs, "SYS_1274" }, /* 1274 */
- { 8, 0, printargs, "SYS_1275" }, /* 1275 */
- { 8, 0, printargs, "SYS_1276" }, /* 1276 */
- { 8, 0, printargs, "SYS_1277" }, /* 1277 */
- { 8, 0, printargs, "SYS_1278" }, /* 1278 */
- { 8, 0, printargs, "SYS_1279" }, /* 1279 */
- { 8, 0, printargs, "SYS_1280" }, /* 1280 */
- { 8, 0, printargs, "SYS_1281" }, /* 1281 */
- { 8, 0, printargs, "SYS_1282" }, /* 1282 */
- { 8, 0, printargs, "SYS_1283" }, /* 1283 */
- { 8, 0, printargs, "SYS_1284" }, /* 1284 */
- { 8, 0, printargs, "SYS_1285" }, /* 1285 */
- { 8, 0, printargs, "SYS_1286" }, /* 1286 */
- { 8, 0, printargs, "SYS_1287" }, /* 1287 */
- { 8, 0, printargs, "SYS_1288" }, /* 1288 */
- { 8, 0, printargs, "SYS_1289" }, /* 1289 */
- { 8, 0, printargs, "SYS_1290" }, /* 1290 */
- { 8, 0, printargs, "SYS_1291" }, /* 1291 */
- { 8, 0, printargs, "SYS_1292" }, /* 1292 */
- { 8, 0, printargs, "SYS_1293" }, /* 1293 */
+ { 5, 0, printargs, "add_key" }, /* 1271 */
+ { 4, 0, printargs, "request_key" }, /* 1272 */
+ { 5, 0, printargs, "keyctl" }, /* 1273 */
+ { 3, 0, printargs, "ioprio_set" }, /* 1274 */
+ { 2, 0, printargs, "ioprio_get" }, /* 1275 */
+ { 3, 0, printargs, "set_zone_reclaim" }, /* 1276 */
+ { 0, 0, printargs, "inotify_init" }, /* 1277 */
+ { 3, 0, printargs, "inotify_add_watch" }, /* 1278 */
+ { 2, 0, printargs, "inotify_rm_watch" }, /* 1279 */
+ { 4, 0, printargs, "migrate_pages" }, /* 1280 */
+ { 4, TD|TF, sys_openat, "openat" }, /* 1281 */
+ { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 1282 */
+ { 4, TD|TF, sys_mknodat, "mknodat" }, /* 1283 */
+ { 5, TD|TF, sys_fchownat, "fchownat" }, /* 1284 */
+ { 3, TD|TF, sys_futimesat, "futimesat" }, /* 1285 */
+ { 4, TD|TF, sys_fstatat, "fstatat" }, /* 1286 */
+ { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 1287 */
+ { 4, TD|TF, sys_renameat, "renameat" }, /* 1288 */
+ { 5, TD|TF, sys_linkat, "linkat" }, /* 1289 */
+ { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 1290 */
+ { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 1291 */
+ { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 1292 */
+ { 3, TD|TF, sys_faccessat, "faccessat" }, /* 1293 */
{ 8, 0, printargs, "SYS_1294" }, /* 1294 */
{ 8, 0, printargs, "SYS_1295" }, /* 1295 */
- { 8, 0, printargs, "SYS_1296" }, /* 1296 */
+ { 1, 0, printargs, "unshare" }, /* 1296 */
{ 8, 0, printargs, "SYS_1297" }, /* 1297 */
{ 8, 0, printargs, "SYS_1298" }, /* 1298 */
{ 8, 0, printargs, "SYS_1299" }, /* 1299 */
--- linux/powerpc/syscallent.h
+++ linux/powerpc/syscallent.h
@@ -299,35 +299,35 @@
{ 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 267 */
{ 5, 0, printargs, "sys_kexec_load" }, /* 268 */
{ 5, 0, printargs, "add_key" }, /* 269 */
- { 5, 0, printargs, "request_key" }, /* 270 */
+ { 4, 0, printargs, "request_key" }, /* 270 */
{ 5, 0, printargs, "keyctl" }, /* 271 */
{ 5, TP, sys_waitid, "waitid" }, /* 272 */
- { 5, 0, printargs, "SYS_273" }, /* 273 */
- { 5, 0, printargs, "SYS_274" }, /* 274 */
- { 5, 0, printargs, "SYS_275" }, /* 275 */
- { 5, 0, printargs, "SYS_276" }, /* 276 */
- { 5, 0, printargs, "SYS_277" }, /* 277 */
+ { 3, 0, printargs, "ioprio_set" }, /* 273 */
+ { 2, 0, printargs, "ioprio_get" }, /* 274 */
+ { 0, 0, printargs, "inotify_init" }, /* 275 */
+ { 3, 0, printargs, "inotify_add_watch" }, /* 276 */
+ { 2, 0, printargs, "inotify_rm_watch" }, /* 277 */
{ 5, 0, printargs, "SYS_278" }, /* 278 */
{ 5, 0, printargs, "SYS_279" }, /* 279 */
- { 5, 0, printargs, "SYS_280" }, /* 280 */
- { 5, 0, printargs, "SYS_281" }, /* 281 */
- { 5, 0, printargs, "SYS_282" }, /* 282 */
+ { 6, TD, sys_pselect6, "pselect6" }, /* 280 */
+ { 5, 0, printargs, "ppoll" }, /* 281 */
+ { 1, 0, printargs, "unshare" }, /* 282 */
{ 5, 0, printargs, "SYS_283" }, /* 283 */
{ 5, 0, printargs, "SYS_284" }, /* 284 */
{ 5, 0, printargs, "SYS_285" }, /* 285 */
- { 5, 0, printargs, "SYS_286" }, /* 286 */
- { 5, 0, printargs, "SYS_287" }, /* 287 */
- { 5, 0, printargs, "SYS_288" }, /* 288 */
- { 5, 0, printargs, "SYS_289" }, /* 289 */
- { 5, 0, printargs, "SYS_290" }, /* 290 */
- { 5, 0, printargs, "SYS_291" }, /* 291 */
- { 5, 0, printargs, "SYS_292" }, /* 292 */
- { 5, 0, printargs, "SYS_293" }, /* 293 */
- { 5, 0, printargs, "SYS_294" }, /* 294 */
- { 5, 0, printargs, "SYS_295" }, /* 295 */
- { 5, 0, printargs, "SYS_296" }, /* 296 */
- { 5, 0, printargs, "SYS_297" }, /* 297 */
- { 5, 0, printargs, "SYS_298" }, /* 298 */
+ { 4, TD|TF, sys_openat, "openat" }, /* 286 */
+ { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 287 */
+ { 4, TD|TF, sys_mknodat, "mknodat" }, /* 288 */
+ { 5, TD|TF, sys_fchownat, "fchownat" }, /* 289 */
+ { 3, TD|TF, sys_futimesat, "futimesat" }, /* 290 */
+ { 4, TD|TF, sys_fstatat, "fstatat" }, /* 291 */
+ { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 292 */
+ { 4, TD|TF, sys_renameat, "renameat" }, /* 293 */
+ { 5, TD|TF, sys_linkat, "linkat" }, /* 294 */
+ { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 295 */
+ { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 296 */
+ { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 297 */
+ { 3, TD|TF, sys_faccessat, "faccessat" }, /* 298 */
{ 5, 0, printargs, "SYS_299" }, /* 299 */ { 5, 0, printargs, "SYS_300" }, /* 300 */
{ 5, 0, printargs, "SYS_301" }, /* 301 */
{ 5, 0, printargs, "SYS_302" }, /* 302 */
--- linux/s390/syscallent.h
+++ linux/s390/syscallent.h
@@ -317,22 +317,22 @@
{ 2, 0, printargs, "inotify_rm_watch" }, /* 286 */
{ 5, 0, printargs, "SYS_287" }, /* 287 */
- { 5, 0, printargs, "SYS_288" }, /* 288 */
- { 5, 0, printargs, "SYS_289" }, /* 289 */
- { 5, 0, printargs, "SYS_290" }, /* 290 */
- { 5, 0, printargs, "SYS_291" }, /* 291 */
- { 5, 0, printargs, "SYS_292" }, /* 292 */
- { 5, 0, printargs, "SYS_293" }, /* 293 */
- { 5, 0, printargs, "SYS_294" }, /* 294 */
- { 5, 0, printargs, "SYS_295" }, /* 295 */
- { 5, 0, printargs, "SYS_296" }, /* 296 */
- { 5, 0, printargs, "SYS_297" }, /* 297 */
- { 5, 0, printargs, "SYS_298" }, /* 298 */
- { 5, 0, printargs, "SYS_299" }, /* 299 */
- { 5, 0, printargs, "SYS_300" }, /* 300 */
- { 5, 0, printargs, "SYS_301" }, /* 301 */
- { 5, 0, printargs, "SYS_302" }, /* 302 */
- { 5, 0, printargs, "SYS_303" }, /* 303 */
+ { 4, TD|TF, sys_openat, "openat" }, /* 288 */
+ { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 289 */
+ { 4, TD|TF, sys_mknodat, "mknodat" }, /* 290 */
+ { 5, TD|TF, sys_fchownat, "fchownat" }, /* 291 */
+ { 3, TD|TF, sys_futimesat, "futimesat" }, /* 292 */
+ { 4, TD|TF, sys_fstatat, "fstatat64" }, /* 293 */
+ { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 294 */
+ { 4, TD|TF, sys_renameat, "renameat" }, /* 295 */
+ { 5, TD|TF, sys_linkat, "linkat" }, /* 296 */
+ { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 297 */
+ { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 298 */
+ { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 299 */
+ { 3, TD|TF, sys_faccessat, "faccessat" }, /* 300 */
+ { 6, TD, sys_pselect6, "pselect6" }, /* 301 */
+ { 5, 0, printargs, "ppoll" }, /* 302 */
+ { 1, 0, printargs, "unshare" }, /* 303 */
{ 5, 0, printargs, "SYS_304" }, /* 304 */
{ 5, 0, printargs, "SYS_305" }, /* 305 */
{ 5, 0, printargs, "SYS_306" }, /* 306 */
--- linux/s390x/syscallent.h
+++ linux/s390x/syscallent.h
@@ -316,22 +316,22 @@
{ 2, 0, printargs, "inotify_rm_watch" }, /* 286 */
{ 5, 0, printargs, "SYS_287" }, /* 287 */
- { 5, 0, printargs, "SYS_288" }, /* 288 */
- { 5, 0, printargs, "SYS_289" }, /* 289 */
- { 5, 0, printargs, "SYS_290" }, /* 290 */
- { 5, 0, printargs, "SYS_291" }, /* 291 */
- { 5, 0, printargs, "SYS_292" }, /* 292 */
- { 5, 0, printargs, "SYS_293" }, /* 293 */
- { 5, 0, printargs, "SYS_294" }, /* 294 */
- { 5, 0, printargs, "SYS_295" }, /* 295 */
- { 5, 0, printargs, "SYS_296" }, /* 296 */
- { 5, 0, printargs, "SYS_297" }, /* 297 */
- { 5, 0, printargs, "SYS_298" }, /* 298 */
- { 5, 0, printargs, "SYS_299" }, /* 299 */
- { 5, 0, printargs, "SYS_300" }, /* 300 */
- { 5, 0, printargs, "SYS_301" }, /* 301 */
- { 5, 0, printargs, "SYS_302" }, /* 302 */
- { 5, 0, printargs, "SYS_303" }, /* 303 */
+ { 4, TD|TF, sys_openat, "openat" }, /* 288 */
+ { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 289 */
+ { 4, TD|TF, sys_mknodat, "mknodat" }, /* 290 */
+ { 5, TD|TF, sys_fchownat, "fchownat" }, /* 291 */
+ { 3, TD|TF, sys_futimesat, "futimesat" }, /* 292 */
+ { 4, TD|TF, sys_fstatat, "fstatat" }, /* 293 */
+ { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 294 */
+ { 4, TD|TF, sys_renameat, "renameat" }, /* 295 */
+ { 5, TD|TF, sys_linkat, "linkat" }, /* 296 */
+ { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 297 */
+ { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 298 */
+ { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 299 */
+ { 3, TD|TF, sys_faccessat, "faccessat" }, /* 300 */
+ { 6, TD, sys_pselect6, "pselect6" }, /* 301 */
+ { 5, 0, printargs, "ppoll" }, /* 302 */
+ { 1, 0, printargs, "unshare" }, /* 303 */
{ 5, 0, printargs, "SYS_304" }, /* 304 */
{ 5, 0, printargs, "SYS_305" }, /* 305 */
{ 5, 0, printargs, "SYS_306" }, /* 306 */
--- linux/syscallent.h
+++ linux/syscallent.h
@@ -316,31 +316,31 @@
{ 5, 0, printargs, "sys_kexec_load" }, /* 283 */
{ 5, TP, sys_waitid, "waitid", SYS_waitid }, /* 284 */
{ 5, 0, printargs, "SYS_285" }, /* 285 */
- { 5, 0, printargs, "SYS_286" }, /* 286 */
- { 5, 0, printargs, "SYS_287" }, /* 287 */
- { 5, 0, printargs, "SYS_288" }, /* 288 */
- { 5, 0, printargs, "SYS_289" }, /* 289 */
- { 5, 0, printargs, "SYS_290" }, /* 290 */
- { 5, 0, printargs, "SYS_291" }, /* 291 */
- { 5, 0, printargs, "SYS_292" }, /* 292 */
- { 5, 0, printargs, "SYS_293" }, /* 293 */
- { 5, 0, printargs, "SYS_294" }, /* 294 */
- { 5, 0, printargs, "SYS_295" }, /* 295 */
- { 5, 0, printargs, "SYS_296" }, /* 296 */
- { 5, 0, printargs, "SYS_297" }, /* 297 */
- { 5, 0, printargs, "SYS_298" }, /* 298 */
- { 5, 0, printargs, "SYS_299" }, /* 299 */
- { 5, 0, printargs, "SYS_300" }, /* 300 */
- { 5, 0, printargs, "SYS_301" }, /* 301 */
- { 5, 0, printargs, "SYS_302" }, /* 302 */
- { 5, 0, printargs, "SYS_303" }, /* 303 */
- { 5, 0, printargs, "SYS_304" }, /* 304 */
- { 5, 0, printargs, "SYS_305" }, /* 305 */
- { 5, 0, printargs, "SYS_306" }, /* 306 */
- { 5, 0, printargs, "SYS_307" }, /* 307 */
- { 5, 0, printargs, "SYS_308" }, /* 308 */
- { 5, 0, printargs, "SYS_309" }, /* 309 */
- { 5, 0, printargs, "SYS_310" }, /* 310 */
+ { 5, 0, printargs, "add_key" }, /* 286 */
+ { 4, 0, printargs, "request_key" }, /* 287 */
+ { 5, 0, printargs, "keyctl" }, /* 288 */
+ { 3, 0, printargs, "ioprio_set" }, /* 289 */
+ { 2, 0, printargs, "ioprio_get" }, /* 290 */
+ { 0, 0, printargs, "inotify_init" }, /* 291 */
+ { 3, 0, sys_inotify_add_watch, "inotify_add_watch" }, /* 292 */
+ { 2, 0, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 293 */
+ { 4, 0, printargs, "migrate_pages" }, /* 294 */
+ { 4, TD|TF, sys_openat, "openat" }, /* 295 */
+ { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 296 */
+ { 4, TD|TF, sys_mknodat, "mknodat" }, /* 297 */
+ { 5, TD|TF, sys_fchownat, "fchownat" }, /* 298 */
+ { 3, TD|TF, sys_futimesat, "futimesat" }, /* 299 */
+ { 4, TD|TF, sys_fstatat, "fstatat64" }, /* 300 */
+ { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 301 */
+ { 4, TD|TF, sys_renameat, "renameat" }, /* 302 */
+ { 5, TD|TF, sys_linkat, "linkat" }, /* 303 */
+ { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 304 */
+ { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 305 */
+ { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 306 */
+ { 3, TD|TF, sys_faccessat, "faccessat" }, /* 307 */
+ { 6, TD, sys_pselect6, "pselect6" }, /* 308 */
+ { 5, 0, printargs, "ppoll" }, /* 309 */
+ { 1, 0, printargs, "unshare" }, /* 310 */
{ 5, 0, printargs, "SYS_311" }, /* 311 */
{ 5, 0, printargs, "SYS_312" }, /* 312 */
{ 5, 0, printargs, "SYS_313" }, /* 313 */
--- linux/x86_64/syscallent.h
+++ linux/x86_64/syscallent.h
@@ -246,9 +246,26 @@
{ 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 245 */
{ 5, 0, printargs, "kexec_load" }, /* 246 */
{ 5, TP, sys_waitid, "waitid" }, /* 247 */
- { 5, 0, printargs, "SYS_248" }, /* 248 */
- { 5, 0, printargs, "SYS_249" }, /* 249 */
- { 5, 0, printargs, "SYS_250" }, /* 250 */
- { 5, 0, printargs, "SYS_251" }, /* 251 */
- { 5, 0, printargs, "SYS_252" }, /* 252 */
- { 5, 0, printargs, "SYS_253" }, /* 253 */
+ { 5, 0, printargs, "add_key" }, /* 248 */
+ { 4, 0, printargs, "request_key" }, /* 249 */
+ { 5, 0, printargs, "keyctl" }, /* 250 */
+ { 3, 0, printargs, "ioprio_set" }, /* 251 */
+ { 2, 0, printargs, "ioprio_get" }, /* 252 */
+ { 0, 0, printargs, "inotify_init" }, /* 253 */
+ { 3, 0, sys_inotify_add_watch, "inotify_add_watch" }, /* 254 */
+ { 2, 0, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 255 */
+ { 4, 0, printargs, "migrate_pages" }, /* 256 */
+ { 4, TD|TF, sys_openat, "openat" }, /* 257 */
+ { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 258 */
+ { 4, TD|TF, sys_mknodat, "mknodat" }, /* 259 */
+ { 5, TD|TF, sys_fchownat, "fchownat" }, /* 260 */
+ { 3, TD|TF, sys_futimesat, "futimesat" }, /* 261 */
+ { 4, TD|TF, sys_fstatat, "fstatat" }, /* 262 */
+ { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 263 */
+ { 4, TD|TF, sys_renameat, "renameat" }, /* 264 */
+ { 5, TD|TF, sys_linkat, "linkat" }, /* 265 */
+ { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 266 */
+ { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 267 */
+ { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 268 */
+ { 3, TD|TF, sys_faccessat, "faccessat" }, /* 269 */
+ { 6, TD, sys_pselect6, "pselect6" }, /* 270 */

59
warn.patch Normal file
View File

@ -0,0 +1,59 @@
--- process.c
+++ process.c
@@ -718,12 +718,12 @@
{
#if defined (IA64)
{
- unsigned long *bsp, *ap;
+ unsigned long bsp, *ap;
if (upeek(tcp->pid, PT_AR_BSP, (long *) &bsp) , 0)
return -1;
- ap = ia64_rse_skip_regs(bsp, argnum);
+ ap = ia64_rse_skip_regs((unsigned long *) bsp, argnum);
errno = 0;
ptrace(PTRACE_POKEDATA, tcp->pid, (char *) ap, tcp->u_arg[argnum]);
if (errno)
--- syscall.c
+++ syscall.c
@@ -1803,7 +1803,7 @@
#elif defined (IA64)
{
if (!ia32) {
- unsigned long *out0, *rbs_end, cfm, sof, sol, i;
+ unsigned long *out0, rbs_end, cfm, sof, sol, i;
/* be backwards compatible with kernel < 2.4.4... */
# ifndef PT_RBS_END
# define PT_RBS_END PT_AR_BSP
@@ -1816,7 +1816,7 @@
sof = (cfm >> 0) & 0x7f;
sol = (cfm >> 7) & 0x7f;
- out0 = ia64_rse_skip_regs(rbs_end, -sof + sol);
+ out0 = ia64_rse_skip_regs((unsigned long *)rbs_end, -sof + sol);
if (tcp->scno >= 0 && tcp->scno < nsyscalls
&& sysent[tcp->scno].nargs != -1)
--- util.c
+++ util.c
@@ -1172,7 +1172,7 @@
static int
arg_setup(struct tcb *tcp, arg_setup_state *state)
{
- unsigned long *bsp, cfm, sof, sol;
+ unsigned long bsp, cfm, sof, sol;
if (ia32)
return 0;
@@ -1184,9 +1184,8 @@
sof = (cfm >> 0) & 0x7f;
sol = (cfm >> 7) & 0x7f;
- bsp = ia64_rse_skip_regs(bsp, -sof + sol);
+ *state = ia64_rse_skip_regs((unsigned long *) bsp, -sof + sol);
- *state = bsp;
return 0;
}