diff options
author | Mike Frysinger <vapier@gentoo.org> | 2010-09-11 15:04:18 -0400 |
---|---|---|
committer | Dmitry V. Levin <ldv@altlinux.org> | 2010-09-15 15:36:00 +0000 |
commit | 260e571343b12221ad848a9c972fc5518d66ef2c (patch) | |
tree | d9214226545682340b30452a3ac82ed1e5610613 /system.c | |
parent | 1b30f4b7b73e6840ddfe299a84a5864074de66b7 (diff) | |
download | strace-260e571343b12221ad848a9c972fc5518d66ef2c.tar.gz strace-260e571343b12221ad848a9c972fc5518d66ef2c.tar.bz2 strace-260e571343b12221ad848a9c972fc5518d66ef2c.tar.xz |
Blackfin: decode new syscalls
* linux/bfin/syscallent.h: Add fanotify/prlimit/cacheflush syscalls.
* linux/syscall.h: Add sys_cacheflush() decl.
* system.c: Decode Blackfin's cacheflush syscall.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'system.c')
-rw-r--r-- | system.c | 23 |
1 files changed, 23 insertions, 0 deletions
@@ -318,6 +318,29 @@ sys_sram_alloc(struct tcb *tcp) return 1; } +#include <asm/cachectl.h> + +static const struct xlat cacheflush_flags[] = { + { ICACHE, "ICACHE" }, + { DCACHE, "DCACHE" }, + { BCACHE, "BCACHE" }, + { 0, NULL }, +}; + +int +sys_cacheflush(struct tcb *tcp) +{ + if (entering(tcp)) { + /* start addr */ + tprintf("%#lx, ", tcp->u_arg[0]); + /* length */ + tprintf("%ld, ", tcp->u_arg[1]); + /* flags */ + printxval(cacheflush_flags, tcp->u_arg[1], "?CACHE"); + } + return 0; +} + #endif #endif /* LINUX */ |