lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 26 Oct 2017 23:50:06 +0000
From:   Song Liu <songliubraving@...com>
To:     kbuild test robot <lkp@...el.com>,
        David Miller <davem@...emloft.net>
CC:     "kbuild-all@...org" <kbuild-all@...org>,
        "alexei.starovoitov@...il.com" <alexei.starovoitov@...il.com>,
        Martin Lau <kafai@...com>, Alexei Starovoitov <ast@...com>,
        "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
        "liu.song.a23@...il.com" <liu.song.a23@...il.com>
Subject: Re: [PATCH net-next] tcp: add tracepoint
 trace_tcp_retransmit_synack()


> On Oct 25, 2017, at 8:13 PM, kbuild test robot <lkp@...el.com> wrote:
> 
> Hi Song,
> 
> [auto build test WARNING on net-next/master]
> 
> url:    https://github.com/0day-ci/linux/commits/Song-Liu/tcp-add-tracepoint-trace_tcp_retransmit_synack/20171026-010651
> reproduce:
>        # apt-get install sparse
>        make ARCH=x86_64 allmodconfig
>        make C=1 CF=-D__CHECK_ENDIAN__
> 
> 
> sparse warnings: (new ones prefixed by >>)
> 
> 
> vim +281 include/trace/events/tcp.h
> 
>   241	
>   242		TP_PROTO(const struct sock *sk, const struct request_sock *req),
>   243	
>   244		TP_ARGS(sk, req),
>   245	
>   246		TP_STRUCT__entry(
>   247			__field(const void *, skaddr)
>   248			__field(const void *, req)
>   249			__field(__u16, sport)
>   250			__field(__u16, dport)
>   251			__array(__u8, saddr, 4)
>   252			__array(__u8, daddr, 4)
>   253			__array(__u8, saddr_v6, 16)
>   254			__array(__u8, daddr_v6, 16)
>   255		),
>   256	
>   257		TP_fast_assign(
>   258			struct inet_request_sock *ireq = inet_rsk(req);
>   259			struct in6_addr *pin6;
>   260			__be32 *p32;
>   261	
>   262			__entry->skaddr = sk;
>   263			__entry->req = req;
>   264	
>   265			__entry->sport = ireq->ir_num;
>   266			__entry->dport = ntohs(ireq->ir_rmt_port);
>   267	
>   268			p32 = (__be32 *) __entry->saddr;
>   269			*p32 = ireq->ir_loc_addr;
>   270	
>   271			p32 = (__be32 *) __entry->daddr;
>   272			*p32 = ireq->ir_rmt_addr;
>   273	
>> 274	#if IS_ENABLED(CONFIG_IPV6)
>   275			if (sk->sk_family == AF_INET6) {
>   276				pin6 = (struct in6_addr *)__entry->saddr_v6;
>   277				*pin6 = ireq->ir_v6_loc_addr;
>   278				pin6 = (struct in6_addr *)__entry->daddr_v6;
>   279				*pin6 = ireq->ir_v6_rmt_addr;
>   280			} else
>> 281	#endif

In this case, we are putting CONFIG_IPV6 in TRACE_EVENT macro, which generates
warnings like:

./include/trace/events/tcp.h:274:1: error: directive in argument list
./include/trace/events/tcp.h:281:1: error: directive in argument list

Seems these warning cannot be easily avoided. This is also the same pattern we 
have been using in include/trace/events/tcp.h. 

Any suggestions on how shall we proceed from here?

Thanks,
Song



Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ