diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2012-03-19 09:51:42 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2012-03-19 09:51:42 +0100 |
commit | c1371ebc400fe9578908beca87f2bf407daf1506 (patch) | |
tree | 0cea1f0643f0c7233f9c37516b3d4c5d634a33e7 /linux/microblaze | |
parent | 9fd4f96d2a2527ac7ca90c156bfc11ce10118684 (diff) | |
download | strace-c1371ebc400fe9578908beca87f2bf407daf1506.tar.gz strace-c1371ebc400fe9578908beca87f2bf407daf1506.tar.bz2 strace-c1371ebc400fe9578908beca87f2bf407daf1506.tar.xz |
Shrink space needed by undefined syscalls in syscall tables.
Undefined syscall looked like this before this change:
{ 5, 0, printargs, "SYS_53" },
That is, "SYS_53" string had to be allocated and stored in strace binary.
Since now SCNO_IN_RANGE() macro requires sysent[scno].sys_func != NULL
for valid syscalls, we can replace printargs with NULL in such lines
and make them "invalid", thus not requiring syscall name string.
Savings on i386:
text data bss dec hex filename
237389 704 18944 257037 3ec0d strace.before
236973 704 18944 256621 3ea6d strace
Savings on mips:
336551 153692 38320 528563 810b3 strace.before
275543 153688 38320 467551 7225f strace
Tested to still decode undefined syscalls correctly (syscall no. 222 on i386).
* linux/*/syscallent.h: Replace 'printargs, "SYS_nnn"' with
'NULL, NULL'.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'linux/microblaze')
-rw-r--r-- | linux/microblaze/syscallent.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/linux/microblaze/syscallent.h b/linux/microblaze/syscallent.h index 2d11d3c..f2da85a 100644 --- a/linux/microblaze/syscallent.h +++ b/linux/microblaze/syscallent.h @@ -248,8 +248,8 @@ { 3, 0, sys_madvise, "madvise" }, /* 219 */ { 3, TD, sys_getdents64, "getdents64" }, /* 220 */ { 3, 0, sys_fcntl, "fcntl64" }, /* 221 */ - { 4, 0, printargs, "SYS_222" }, /* 222 */ - { 4, 0, printargs, "SYS_223" }, /* 223 */ + { 4, 0, NULL, NULL }, /* 222 */ + { 4, 0, NULL, NULL }, /* 223 */ { 0, 0, sys_gettid, "gettid" }, /* 224 */ { 4, 0, sys_readahead, "readahead" }, /* 225 */ { 5, TF, sys_setxattr, "setxattr" }, /* 226 */ @@ -277,7 +277,7 @@ { 3, 0, sys_io_submit, "io_submit" }, /* 248 */ { 3, 0, sys_io_cancel, "io_cancel" }, /* 249 */ { 5, TD, sys_fadvise64, "fadvise64" }, /* 250 */ - { 0, 0, printargs, "SYS_251" }, /* 251 */ + { 0, 0, NULL, NULL }, /* 251 */ { 1, TP, sys_exit, "exit_group" }, /* 252 */ { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 253 */ { 1, TD, sys_epoll_create, "epoll_create" }, /* 254 */ @@ -311,7 +311,7 @@ { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 282 */ { 4, 0, sys_kexec_load, "kexec_load" }, /* 283 */ { 5, TP, sys_waitid, "waitid" }, /* 284 */ - { 5, 0, printargs, "SYS_285" }, /* 285 */ + { 5, 0, NULL, NULL }, /* 285 */ { 5, 0, sys_add_key, "add_key" }, /* 286 */ { 4, 0, sys_request_key, "request_key" }, /* 287 */ { 5, 0, sys_keyctl, "keyctl" }, /* 288 */ |