From: Jean-Tiare Le Bigot Date: Mon, 28 Mar 2016 15:14:12 +0000 (+0000) Subject: solisten: clean endian conversion hack X-Git-Tag: v0.2.0~130^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bf330147212693694268013a9da66e7de86582cb;p=platform%2Fupstream%2Fbcc.git solisten: clean endian conversion hack --- diff --git a/tools/solisten.py b/tools/solisten.py index 6ff3d4d..9797672 100644 --- a/tools/solisten.py +++ b/tools/solisten.py @@ -51,18 +51,6 @@ bpf_text = """ #include #include -// Endian conversion. We can't use kernel version here as it uses inline -// assembly, neither libc version as we can't import it here. Adapted from both. -#if defined(__LITTLE_ENDIAN) -#define bcc_be32_to_cpu(x) ((u32)(__builtin_bswap32)((x))) -#define bcc_be64_to_cpu(x) ((u64)(__builtin_bswap64)((x))) -#elif defined(__BIG_ENDIAN) -#define bcc_be32_to_cpu(x) (x) -#define bcc_be64_to_cpu(x) (x) -#else -#error Host endianness not defined -#endif - // Common structure for UDP/TCP IPv4/IPv6 struct listen_evt_t { u64 ts_us; @@ -117,11 +105,11 @@ int kprobe__inet_listen(struct pt_regs *ctx, struct socket *sock, int backlog) // Get IP if (family == AF_INET) { bpf_probe_read(evt.laddr, sizeof(u32), &(inet->inet_rcv_saddr)); - evt.laddr[0] = bcc_be32_to_cpu(evt.laddr[0]); + evt.laddr[0] = be32_to_cpu(evt.laddr[0]); } else if (family == AF_INET6) { bpf_probe_read(evt.laddr, sizeof(evt.laddr), sk->__sk_common.skc_v6_rcv_saddr.in6_u.u6_addr32); - evt.laddr[0] = bcc_be64_to_cpu(evt.laddr[0]); - evt.laddr[1] = bcc_be64_to_cpu(evt.laddr[1]); + evt.laddr[0] = be64_to_cpu(evt.laddr[0]); + evt.laddr[1] = be64_to_cpu(evt.laddr[1]); } // Send event to userland