diff options
author | Joe Perches <joe@perches.com> | 2014-01-13 23:31:27 -0800 |
---|---|---|
committer | Eric Paris <eparis@redhat.com> | 2014-01-14 14:53:50 -0500 |
commit | b8dbc3241fff043213e8be8e798d45eb6ed28b96 (patch) | |
tree | 904f83fb854645d374a7f2de6d63d9966b7b45b9 /kernel/audit.c | |
parent | 06bdadd7634551cfe8ce071fe44d0311b3033d9e (diff) | |
download | lwn-b8dbc3241fff043213e8be8e798d45eb6ed28b96.tar.gz lwn-b8dbc3241fff043213e8be8e798d45eb6ed28b96.zip |
audit: Use hex_byte_pack_upper
Using the generic kernel function causes the
object size to increase with gcc 4.8.1.
$ size kernel/audit.o*
text data bss dec hex filename
18577 6079 8436 33092 8144 kernel/audit.o.new
18579 6015 8420 33014 80f6 kernel/audit.o.old
Unsigned...
Diffstat (limited to 'kernel/audit.c')
-rw-r--r-- | kernel/audit.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/kernel/audit.c b/kernel/audit.c index 9daf24361d53..b5e6fd81949a 100644 --- a/kernel/audit.c +++ b/kernel/audit.c @@ -1466,7 +1466,6 @@ void audit_log_n_hex(struct audit_buffer *ab, const unsigned char *buf, int i, avail, new_len; unsigned char *ptr; struct sk_buff *skb; - static const unsigned char *hex = "0123456789ABCDEF"; if (!ab) return; @@ -1484,10 +1483,8 @@ void audit_log_n_hex(struct audit_buffer *ab, const unsigned char *buf, } ptr = skb_tail_pointer(skb); - for (i=0; i<len; i++) { - *ptr++ = hex[(buf[i] & 0xF0)>>4]; /* Upper nibble */ - *ptr++ = hex[buf[i] & 0x0F]; /* Lower nibble */ - } + for (i = 0; i < len; i++) + ptr = hex_byte_pack_upper(ptr, buf[i]); *ptr = 0; skb_put(skb, len << 1); /* new string is twice the old string */ } |