Re: [PATCH 5/7] IB/rxe: Fix destination cache for IPv6

Boyer, Andrew
2017-07-27T13:24:15Z

Looks like I forgot to check for CONFIG_IPV6.

On 7/27/17, 2:41 AM, "kbuild test robot" <lkp-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> wrote:

>Hi Andrew,
>
>[auto build test ERROR on rdma/master]
>[also build test ERROR on v4.13-rc2 next-20170726]
>[if your patch is applied to the wrong git tree, please drop us a note to
>help improve the system]
>
>url:
>https://github.com/0day-ci/linux/commits/Andrew-Boyer/IB-rxe-Move-refcount
>ing-earlier-in-rxe_send/20170726-141937
>base: https://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma.git
>master
>config: i386-randconfig-i1-07240017 (attached as .config)
>compiler: gcc-4.8 (Debian 4.8.4-1) 4.8.4
>reproduce:
> # save the attached .config to linux build tree
> make ARCH=i386
>
>All errors (new ones prefixed by >>):
>
> drivers/infiniband//sw/rxe/rxe_net.c: In function 'rxe_find_route':
>>> drivers/infiniband//sw/rxe/rxe_net.c:214:6: error: implicit
>>>declaration of function 'rt6_get_cookie'
>>>[-Werror=implicit-function-declaration]
> rt6_get_cookie((struct rt6_info *)dst);
> ^
> cc1: some warnings being treated as errors
>
>vim +/rt6_get_cookie +214 drivers/infiniband//sw/rxe/rxe_net.c
>
> 184
> 185 static struct dst_entry *rxe_find_route(struct rxe_dev *rxe,
> 186 struct rxe_qp *qp,
> 187 struct rxe_av *av)
> 188 {
> 189 struct dst_entry *dst = NULL;
> 190
> 191 if (qp_type(qp) == IB_QPT_RC)
> 192 dst = sk_dst_get(qp->sk->sk);
> 193
> 194 if (!dst || !dst_check(dst, qp->dst_cookie)) {
> 195 if (dst)
> 196 dst_release(dst);
> 197
> 198 if (av->network_type == RDMA_NETWORK_IPV4) {
> 199 struct in_addr *saddr;
> 200 struct in_addr *daddr;
> 201
> 202 saddr = &av->sgid_addr._sockaddr_in.sin_addr;
> 203 daddr = &av->dgid_addr._sockaddr_in.sin_addr;
> 204 dst = rxe_find_route4(rxe->ndev, saddr, daddr);
> 205 } else if (av->network_type == RDMA_NETWORK_IPV6) {
> 206 struct in6_addr *saddr6;
> 207 struct in6_addr *daddr6;
> 208
> 209 saddr6 = &av->sgid_addr._sockaddr_in6.sin6_addr;
> 210 daddr6 = &av->dgid_addr._sockaddr_in6.sin6_addr;
> 211 dst = rxe_find_route6(rxe->ndev, saddr6, daddr6);
> 212 if (dst)
> 213 qp->dst_cookie =
> > 214 rt6_get_cookie((struct rt6_info *)dst);
> 215 }
> 216 }
> 217
> 218 return dst;
> 219 }
> 220
>
>---
>0-DAY kernel test infrastructure Open Source Technology
>Center
>https://lists.01.org/pipermail/kbuild-all Intel
>Corporation