Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp589863rwl; Fri, 7 Apr 2023 02:08:34 -0700 (PDT) X-Google-Smtp-Source: AKy350YhX2q9TNK+ptToV2I0eZHLw0RJQxGO5xbUJ2Bh+EPditKDTA7VrPP/2hBp6IMoISc71/M2 X-Received: by 2002:a62:7b14:0:b0:625:cc03:df33 with SMTP id w20-20020a627b14000000b00625cc03df33mr1744441pfc.31.1680858514613; Fri, 07 Apr 2023 02:08:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680858514; cv=none; d=google.com; s=arc-20160816; b=GPGWTyb+FjtFBGcsXqMgO4JuLH6WF+KVl2W1nrRxwlocosV5/DQPPUCBFXXVrVHWUP hyxvaEteAXtXhCQdEVohll84i0w4Wd7Bjl9UVi2zu9Xyc7gL++Cb9JzkRDCuvBj8x8/l Qgl7uOyijk5r9+ilrCnAkYX0WR+SzxPHLNk+aEsBETsRSJzIb/x1D/HRopdn4NX85E1V IQUPdNskz+d+/ICj9F0msebgRJTIbjxq3EqH5YdhK7gOPWehGYgxjg1Bp4vnFZMp7B8d +9oEXZ+iOeDRt/kMk/RxC71vKW22EXKfBGeGaHSDy7xc0c8o3VMaix6nok+j3alyfoJ6 wCHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=gD0fLioRJ4bazZO1d+c33FChVf79wAvXK8pl+WtkfeU=; b=It/MvKGvUhp4CaKcKye1yZTDjMrqd8CnCbd3L04lG6cVEtQJ64QMbWi8ZSYKtfXbub DrK57oulISPi/4PYkq6FhkKo+aCqFFXkAjBWxhOS/6/Gl9TkJCbA6GHpIQV21L3UCMHk vvTVXrH86vs9FF2s85frBXjheGduxn3E8XaB5eMZJQkukaJRh1wNywPZWhu6hHBUGqVJ muYSVx5FpZPvN3duRxMEpuPyfEAYIDXB5E8d+Gx6ZakgcsOJSxnCZyCsI0zSmW/EfgLA Pd77BA/wwpbVZjIJLtekyPmPJRoEAbMzO/5HshBwPb7dleU1QdpnEYttdrtseGC6uaQC 7tIg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=DYWxHIJc; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w8-20020a63f508000000b00513dd352cdesi3229487pgh.729.2023.04.07.02.08.21; Fri, 07 Apr 2023 02:08:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=DYWxHIJc; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240385AbjDGJBM (ORCPT + 99 others); Fri, 7 Apr 2023 05:01:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47692 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230173AbjDGJBJ (ORCPT ); Fri, 7 Apr 2023 05:01:09 -0400 Received: from mail-yw1-x1133.google.com (mail-yw1-x1133.google.com [IPv6:2607:f8b0:4864:20::1133]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 16C5483F0 for ; Fri, 7 Apr 2023 02:01:08 -0700 (PDT) Received: by mail-yw1-x1133.google.com with SMTP id 00721157ae682-54c0c86a436so85570507b3.6 for ; Fri, 07 Apr 2023 02:01:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680858067; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=gD0fLioRJ4bazZO1d+c33FChVf79wAvXK8pl+WtkfeU=; b=DYWxHIJcV2w529JGlIVbdQMEkhLczL6gZM1mn89BX+zTRqRtQMReGglMWAAbvx8HF/ ap+nYnfUDhyEUnDoFlyKtBpJMQh/J5l8v3FS9NiwT36mU0xz/eNrUq5+RegeK2KfHh/y Yrfb+SfhuMdO1Hau68nAvXBDWctayYdzaK2Caa+ngx31UV1n4c75Q0HoVzwQhnL2ajEb aSJ/3AVh9fqjIar5P1cikM+uVpeuDzIVBW5BEmDQdbKumykhIw/UldaCqIypTLr5iSKh UeYfm04jU50PGmTOCM24y138Sr3AL0mnvWmM5+mEyR7oNe7DmVpVtOUDl2AId4xJOBOy q5QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680858067; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gD0fLioRJ4bazZO1d+c33FChVf79wAvXK8pl+WtkfeU=; b=agLomXbARbYJCck/zG7zLYm+V16GZBaI7HOkQo1zIgak+kvddKplGxxID4XcdvmvIk suCgzd9QW9yQPXoOKXglSw2XaGhSo9WwD+FzSxdDwjIOSLv3wopqT+CzPv+qkXwvvKmJ adwq6djrwKiXkUj7B4DvNSKAKo6FEjAcPpjpKT6iUFYIr+ATfuQmMELJINeU/kH3CgWU 327y/mDUC6sJap1SZjLFikkZtSf5b7JbOxlNbsWybOOjWgBE9D7xCi3R/UK6E313brAx /yjqlLdn/UfE+xIKbxm7p97jYcQGMyKOkN/j+lndXZUt0oUkHrrX+9rOC/E4VWtB7OWv f16Q== X-Gm-Message-State: AAQBX9en800VMM8rhZpTPEx5bMDszh68osRuQfPkV5puNf0GXH4ZoLtf 5QASuG+71WyvLaensqtRnLbvFA79tawhm64//7AhqA== X-Received: by 2002:a81:ae52:0:b0:541:a17f:c77d with SMTP id g18-20020a81ae52000000b00541a17fc77dmr656749ywk.10.1680858066675; Fri, 07 Apr 2023 02:01:06 -0700 (PDT) MIME-Version: 1.0 References: <20230407035058.8373-1-iccccc@hust.edu.cn> In-Reply-To: <20230407035058.8373-1-iccccc@hust.edu.cn> From: Eric Dumazet Date: Fri, 7 Apr 2023 11:00:55 +0200 Message-ID: Subject: Re: [PATCH net-next] net/ipv6: silence 'passing zero to ERR_PTR()' warning To: Haoyi Liu Cc: "David S. Miller" , David Ahern , Jakub Kicinski , Paolo Abeni , hust-os-kernel-patches@googlegroups.com, yalongz@hust.edu.cn, error27@gmail.com, Dongliang Mu , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-15.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,ENV_AND_HDR_SPF_MATCH, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL, USER_IN_DEF_SPF_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Apr 7, 2023 at 5:54=E2=80=AFAM Haoyi Liu wrote= : > > Smatch complains that if xfrm_lookup() returns NULL then this does a > weird thing with "err": > > net/ ipv6/ icmp.c:411 icmpv6_route_lookup() > warn: passing zero to ERR_PTR() > > Just return "dst2" directly instead of assigning it to"dst" and then > looking up the value of "err". No functional change. > > Signed-off-by: Haoyi Liu > Reviewed-by: Dongliang Mu > --- > The issue is found by static analysis, and the patch is remains untested. > --- > net/ipv6/icmp.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c > index 1f53f2a74480..a5e77acead89 100644 > --- a/net/ipv6/icmp.c > +++ b/net/ipv6/icmp.c > @@ -395,7 +395,7 @@ static struct dst_entry *icmpv6_route_lookup(struct n= et *net, > dst2 =3D xfrm_lookup(net, dst2, flowi6_to_flowi(&fl2), sk, XFRM_L= OOKUP_ICMP); > if (!IS_ERR(dst2)) { > dst_release(dst); > - dst =3D dst2; > + return dst2; > } else { > err =3D PTR_ERR(dst2); > if (err =3D=3D -EPERM) { > -- > 2.25.1 > Please cleanup this thing, this is a maze of returns, gotos, and unnecessary 'else's Thanks. diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c index 1f53f2a74480c0b8433204b567e7f98ad1216ad6..c76861f1ff6e4ee12d2686c1d13= 5b24595989dfa 100644 --- a/net/ipv6/icmp.c +++ b/net/ipv6/icmp.c @@ -395,14 +395,12 @@ static struct dst_entry *icmpv6_route_lookup(struct net *net, dst2 =3D xfrm_lookup(net, dst2, flowi6_to_flowi(&fl2), sk, XFRM_LOOKUP_ICMP); if (!IS_ERR(dst2)) { dst_release(dst); - dst =3D dst2; - } else { - err =3D PTR_ERR(dst2); - if (err =3D=3D -EPERM) { - dst_release(dst); - return dst2; - } else - goto relookup_failed; + return dst2; + } + err =3D PTR_ERR(dst2); + if (err =3D=3D -EPERM) { + dst_release(dst); + return dst2; } relookup_failed: