On 08/16/2017 12:17 PM, Eric Dumazet wrote:
> On Wed, 2017-08-16 at 12:13 -0700, David Miller wrote:
>> From: John Fastabend <john.fastab...@gmail.com>
>> Date: Wed, 16 Aug 2017 12:06:36 -0700
>>
>>> On 08/16/2017 11:35 AM, David Miller wrote:
>>>> From: David Miller <da...@davemloft.net>
>>>> Date: Wed, 16 Aug 2017 11:28:19 -0700 (PDT)
>>>>
>>>>> From: John Fastabend <john.fastab...@gmail.com>
>>>>> Date: Tue, 15 Aug 2017 22:30:15 -0700
>>>>>
>>>>>> This series implements a sockmap and socket redirect helper for BPF
>>>>>> using a model similar to XDP netdev redirect.
>>>>>
>>>>> Series applied, thanks John.
>>>>>
>>>>
>>>> We get a legit warning from gcc due to these changes:
>>>>
>>>> kernel/bpf/sockmap.c: In function ‘smap_state_change’:
>>>> kernel/bpf/sockmap.c:156:21: warning: ‘psock’ may be used uninitialized in 
>>>> this function [-Wmaybe-uninitialized]
>>>>   struct smap_psock *psock;
>>>>
>>>> It's the default switch case in this function, psock is not initialized
>>>> for sure at this point.
>>>>
>>>
>>> I missed this with older gcc4 it seems. Fixed now and compiling without 
>>> errors
>>> now with gcc4/5. Below is the diff and all verifier/sockmap tests pass. 
>>> Want a
>>> v2 I presume?
>>
>> I already pushed out v1, so you'll need to send me a fixup patch.
> 
> I also have a build error.
> 
> $ git grep -n __sock_map_lookup_elem
> include/linux/bpf.h:316:struct sock  *__sock_map_lookup_elem(struct bpf_map 
> *map, u32 key);
> kernel/bpf/sockmap.c:558:struct sock  *__sock_map_lookup_elem(struct bpf_map 
> *map, u32 key)
> net/core/filter.c:1881:         sk = __sock_map_lookup_elem(ri->map, 
> ri->ifindex);
> 
> 
> 
> $ make ...
> ...
> net/core/filter.c: In function ‘do_sk_redirect_map’:
> net/core/filter.c:1881:3: error: implicit declaration of function 
> ‘__sock_map_lookup_elem’ [-Werror=implicit-function-declaration]
>    sk = __sock_map_lookup_elem(ri->map, ri->ifindex);
>    ^
> net/core/filter.c:1881:6: warning: assignment makes pointer from integer 
> without a cast [enabled by default]
>    sk = __sock_map_lookup_elem(ri->map, ri->ifindex);
>       ^
> cc1: some warnings being treated as errors
> make[2]: *** [net/core/filter.o] Error 1
> make[2]: *** Waiting for unfinished jobs....
> 
> 

Thanks Eric, I'll have a fix shortly.

Reply via email to