Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp9869143ybi; Wed, 10 Jul 2019 18:53:41 -0700 (PDT) X-Google-Smtp-Source: APXvYqxtpNmz+Ftwul9KqjsWZkH30llsyZPdSG6Z4VDQ4uh81R+4HofG2R9+sHQz0p/lDBv3Qa0o X-Received: by 2002:a65:64c6:: with SMTP id t6mr1498505pgv.323.1562810020955; Wed, 10 Jul 2019 18:53:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1562810020; cv=none; d=google.com; s=arc-20160816; b=Gg6IZtE/DZgfO/K+pIYoxpbjYiCBMdPHuHa0kQVVXgDUXwte7MymM8A6ZvzB+uqRX8 vnZCU4/Yc0+xQXxD++11CtyhTx1Sz68cqEKjiARCsbi0UYDiiyng3QL4BNPzvMGuQJu9 Y5Kea++QJPeAMdWR7+hNwZIGeB0SzxKw/JuVKQ0kJDLrQck4L30k0D1NHsIsp/aCNgsg Fe4sLUTnsM2MhiclTvQr0cIWFOBVt1VDj3lb3mxBQYTfleQD0OUidQ+Cn4pCbMV28y/+ JIdSvD+EIF6YHRFBnlVFP2c2XcgoIxk+OnEhNLT5HZtfZV6tE5MLZ6mnIHMSeKRhzZUh I1zA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:dkim-signature; bh=11cd6X75z4ODTOEnnjys9iy9i5QxO0s66NKcV1oL2+E=; b=d3ug87w2mcSyO2I5hKLpy0/MK3FcfA/QuFDtGd+bcAj8QEEnGMtjvHiwFD/HRKQQeu TuRFQmmWYRdTBkNS6t7BXF1ONWHrogoM2vNyucu9Lbr11xrMUnqms0e6aZCTpYEzulm+ xfDpxIWoyceBqe5FNPqtLoYvowm/ba7a4+jMzM27Ela5IVGPYIvabr4/pGhpYTIi/q9e tlp5RTr6iuxzfk94K+q30/Y/ERpC2avJMrUAaoEGphFp7pKpPzQ1AujDVrxg52Xv4qON gEmN57w4u240glVXhE6SdD4p/OX8J+y21hsU3FGQ424+krcjtKTZiiu4xzcwshu1dV82 UYCw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@canb.auug.org.au header.s=201702 header.b=OpS1mLnd; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g20si3934608pfh.95.2019.07.10.18.53.24; Wed, 10 Jul 2019 18:53:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@canb.auug.org.au header.s=201702 header.b=OpS1mLnd; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727920AbfGKBvA (ORCPT + 99 others); Wed, 10 Jul 2019 21:51:00 -0400 Received: from bilbo.ozlabs.org ([203.11.71.1]:38453 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727188AbfGKBvA (ORCPT ); Wed, 10 Jul 2019 21:51:00 -0400 Received: from authenticated.ozlabs.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail.ozlabs.org (Postfix) with ESMTPSA id 45kfCg1qglz9sN6; Thu, 11 Jul 2019 11:50:55 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=canb.auug.org.au; s=201702; t=1562809857; bh=mugHbuqWraD1+aK2zG0Zb/wLM2BX5/bKzJm2crG3zls=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=OpS1mLndMfZxHZ6BnBNmRFK8Acsn9ngjt5Zgpx2SGh+4lia0OsrmjWS9t3hDqg586 4JzgjcjXtQry+vFxjV/35Krv3NCV5VGRAElmpqy2HcRZfCptltq03S/OL0C4dT9tBm ZrbnTJFS61/MvlkDlfIYuhPfyKi+0bw7ryqJzcG/KnxLQc2MM9JIZ85J7dgakIqQhH NexkYLxsuWN7H6lqKXEQkNA2qjLjNqtdAZkHf9zBCmuI1rBGsKuFiCbZWuBy5Sd+Gu uVWNkx7m8mSjY0s9KiYQXCpUzXbZXr8UYFYGoDsnvpAntVvE4wxLa/PJkDbjDU2XGu 7RRO3LvcPjuxQ== Date: Thu, 11 Jul 2019 11:50:54 +1000 From: Stephen Rothwell To: Jason Gunthorpe Cc: Leon Romanovsky , Bernard Metzler , Doug Ledford , David Miller , Networking , Linux Next Mailing List , Linux Kernel Mailing List Subject: Re: linux-next: build failure after merge of the net-next tree Message-ID: <20190711115054.7d7f468c@canb.auug.org.au> In-Reply-To: <20190710175212.GM2887@mellanox.com> References: <20190709135636.4d36e19f@canb.auug.org.au> <20190709064346.GF7034@mtr-leonro.mtl.com> <20190710175212.GM2887@mellanox.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; boundary="Sig_/zWqer.ymUPl5GdFzgX0ANsT"; protocol="application/pgp-signature" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --Sig_/zWqer.ymUPl5GdFzgX0ANsT Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Hi all, On Wed, 10 Jul 2019 17:52:17 +0000 Jason Gunthorpe wrote: > > On Tue, Jul 09, 2019 at 09:43:46AM +0300, Leon Romanovsky wrote: > > On Tue, Jul 09, 2019 at 01:56:36PM +1000, Stephen Rothwell wrote: =20 > > > Hi all, > > > > > > After merging the net-next tree, today's linux-next build (x86_64 > > > allmodconfig) failed like this: > > > > > > drivers/infiniband/sw/siw/siw_cm.c: In function 'siw_create_listen': > > > drivers/infiniband/sw/siw/siw_cm.c:1978:3: error: implicit declaratio= n of function 'for_ifa'; did you mean 'fork_idle'? [-Werror=3Dimplicit-func= tion-declaration] > > > for_ifa(in_dev) > > > ^~~~~~~ > > > fork_idle > > > drivers/infiniband/sw/siw/siw_cm.c:1978:18: error: expected ';' befor= e '{' token > > > for_ifa(in_dev) > > > ^ > > > ; > > > { > > > ~ > > > > > > Caused by commit > > > > > > 6c52fdc244b5 ("rdma/siw: connection management") > > > > > > from the rdma tree. I don't know why this didn't fail after I mereged > > > that tree. =20 > >=20 > > I had the same question, because I have this fix for a couple of days a= lready. > >=20 > > From 56c9e15ec670af580daa8c3ffde9503af3042d67 Mon Sep 17 00:00:00 2001 > > From: Leon Romanovsky > > Date: Sun, 7 Jul 2019 10:43:42 +0300 > > Subject: [PATCH] Fixup to build SIW issue > >=20 > > Signed-off-by: Leon Romanovsky > > drivers/infiniband/sw/siw/siw_cm.c | 5 ++--- > > 1 file changed, 2 insertions(+), 3 deletions(-) > >=20 > > diff --git a/drivers/infiniband/sw/siw/siw_cm.c b/drivers/infiniband/sw= /siw/siw_cm.c > > index 8e618cb7261f..c883bf514341 100644 > > +++ b/drivers/infiniband/sw/siw/siw_cm.c > > @@ -1954,6 +1954,7 @@ static void siw_drop_listeners(struct iw_cm_id *i= d) > > int siw_create_listen(struct iw_cm_id *id, int backlog) > > { > > struct net_device *dev =3D to_siw_dev(id->device)->netdev; > > + const struct in_ifaddr *ifa; > > int rv =3D 0, listeners =3D 0; > >=20 > > siw_dbg(id->device, "id 0x%p: backlog %d\n", id, backlog); > > @@ -1975,8 +1976,7 @@ int siw_create_listen(struct iw_cm_id *id, int ba= cklog) > > id, &s_laddr.sin_addr, ntohs(s_laddr.sin_port), > > &s_raddr->sin_addr, ntohs(s_raddr->sin_port)); > >=20 > > - for_ifa(in_dev) > > - { > > + in_dev_for_each_ifa_rcu(ifa, in_dev) { > > if (ipv4_is_zeronet(s_laddr.sin_addr.s_addr) || =20 >=20 > Hum. There is no rcu lock held here and we can't use RCU anyhow as > siw_listen_address will sleep. >=20 > I think this needs to use rtnl, as below. Bernard, please urgently > confirm. Thanks >=20 > diff --git a/drivers/infiniband/sw/siw/siw_cm.c b/drivers/infiniband/sw/s= iw/siw_cm.c > index 8e618cb7261f62..ee98e96a5bfaba 100644 > --- a/drivers/infiniband/sw/siw/siw_cm.c > +++ b/drivers/infiniband/sw/siw/siw_cm.c > @@ -1965,6 +1965,7 @@ int siw_create_listen(struct iw_cm_id *id, int back= log) > */ > if (id->local_addr.ss_family =3D=3D AF_INET) { > struct in_device *in_dev =3D in_dev_get(dev); > + const struct in_ifaddr *ifa; > struct sockaddr_in s_laddr, *s_raddr; > =20 > memcpy(&s_laddr, &id->local_addr, sizeof(s_laddr)); > @@ -1975,8 +1976,8 @@ int siw_create_listen(struct iw_cm_id *id, int back= log) > id, &s_laddr.sin_addr, ntohs(s_laddr.sin_port), > &s_raddr->sin_addr, ntohs(s_raddr->sin_port)); > =20 > - for_ifa(in_dev) > - { > + rtnl_lock(); > + in_dev_for_each_ifa_rtnl(ifa, in_dev) { > if (ipv4_is_zeronet(s_laddr.sin_addr.s_addr) || > s_laddr.sin_addr.s_addr =3D=3D ifa->ifa_address) { > s_laddr.sin_addr.s_addr =3D ifa->ifa_address; > @@ -1988,7 +1989,7 @@ int siw_create_listen(struct iw_cm_id *id, int back= log) > listeners++; > } > } > - endfor_ifa(in_dev); > + rtnl_unlock(); > in_dev_put(in_dev); > } else if (id->local_addr.ss_family =3D=3D AF_INET6) { > struct inet6_dev *in6_dev =3D in6_dev_get(dev); So today this failed to build after I merged the rdma tree (previously it didn;t until after the net-next tree was merged (I assume a dependency changed). It failed because in_dev_for_each_ifa_rcu (and in_dev_for_each_ifa_rtnl) is only defined in a commit in the net-next tree :-( I have disabled the driver again. --=20 Cheers, Stephen Rothwell --Sig_/zWqer.ymUPl5GdFzgX0ANsT Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEENIC96giZ81tWdLgKAVBC80lX0GwFAl0mlf4ACgkQAVBC80lX 0Gx1rggAlkl1kFtVwHZG0bs5T+kS+PRHZBvdYHXo44GXD23vLrwu0N9hVZEeHSIu +g+SiptCEgtRPjFDrHydUZV5LnoHRCfu/SszQZ92RtaWm9fMDB9h8xCK4NQ+JwU4 nCI1f+tZQ6rsDB8eeFhWNxUrHI8CZVf1oE2Gv2zQ/+USnU0skE7RbOZPN8DAKSDG vx1ugSopBzIch80xAHOKniPrAhUVq68jRieaENO0Q6ohbT+t9phkJlQ+a4P6PPH7 U3UZ6cS9SpdGDpe+DMD4U/7gnwj6FuZ0iRmUz9fb3fSsIK+JfyriXcdKYi189NnJ MzGCVqKam30DsIBg15r5moLqrqUAXg== =N2Fj -----END PGP SIGNATURE----- --Sig_/zWqer.ymUPl5GdFzgX0ANsT--