Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp3254211ybi; Mon, 29 Jul 2019 03:32:36 -0700 (PDT) X-Google-Smtp-Source: APXvYqxuSx4MCV8u9ejooODgnyCNkU2WGt5BY/WUcyHOMXBL4byrmzzDoLgj2vB2989jiUf4HKhU X-Received: by 2002:a17:902:a417:: with SMTP id p23mr107989279plq.136.1564396356801; Mon, 29 Jul 2019 03:32:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1564396356; cv=none; d=google.com; s=arc-20160816; b=q2c+mKIju8V2SHM1za/YW13BAVA9SgR8U0BWo8SlTsu65UBD2brEMT0YhVwYnP1qOa MBnIPuI3fIE6TsD9lJ752ixmNKVNmy+ctJ0UMTH2V4F1N6R9/rxlsZ3g14jEaMe3mKjG 4dYplbvheBA7i4y4pkg7Pm1elaI0b+eAV4pHHxtjgoA3bVgQ1M8f1XM02MJIKAWeu5HK Y+BBFkT6Fm+qnV44zTGUWaoLmQ0FnSZXBueTCiUaJfLVLRYyykCv9XKufIYylEUSQMdD G8jQx0Shcq0h7WkiRUzHpsnfIuIW38e/wY41oH1dwmPgLbwFE9SjEhbRxA5oA+P9iWvI CaSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date; bh=EXYXlHq+kHq1ONvtAB34Siosd1fahOIP7SPGO6u3INE=; b=laZpdkSqYfJPtjmJf/cPf+afun0R0W8KvuK6fz+QPZyT95iszYtPjBJxek1s6eCOzD MDhnASeoOZ6wbeSRti72RnelqccEhk1BOnhACT70fnZdh/IRSA8Sjlm0MoShWIVz8fTf OeUgXMgGe+A7XfKHjVJVqgEWDpIrL9GqhaiBiUQtpBSAzp/rsLOEL/UJZnraqUaWrtyT iZi7dU4HKrrnuHtgmQvD9Nhj7wHyQsKWAibwX1Z5V80C9BWufqyxvUNtdce+jafRzqlX wyqmrO3AAlwG4UpVaKWWgrlu1bsvHx5slfznRcwH1N7gX9iUC6SH0TXECdTbfeB9T0rg slbQ== ARC-Authentication-Results: i=1; mx.google.com; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m71si24020261pjb.26.2019.07.29.03.32.20; Mon, 29 Jul 2019 03:32:36 -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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728265AbfG2KbA (ORCPT + 99 others); Mon, 29 Jul 2019 06:31:00 -0400 Received: from mx1.redhat.com ([209.132.183.28]:56960 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726358AbfG2KbA (ORCPT ); Mon, 29 Jul 2019 06:31:00 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 015CAC049E10; Mon, 29 Jul 2019 10:31:00 +0000 (UTC) Received: from localhost (unknown [10.40.205.71]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9D3E860623; Mon, 29 Jul 2019 10:30:57 +0000 (UTC) Date: Mon, 29 Jul 2019 12:30:55 +0200 From: Jiri Benc To: Jia-Ju Bai Cc: davem@davemloft.net, sbrivio@redhat.com, sd@queasysnail.net, liuhangbin@gmail.com, dsahern@gmail.com, natechancellor@gmail.com, tglx@linutronix.de, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] net: geneve: Fix a possible null-pointer dereference in geneve_link_config() Message-ID: <20190729123055.5a7ba416@redhat.com> In-Reply-To: <20190729102611.2338-1-baijiaju1990@gmail.com> References: <20190729102611.2338-1-baijiaju1990@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Mon, 29 Jul 2019 10:31:00 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 29 Jul 2019 18:26:11 +0800, Jia-Ju Bai wrote: > --- a/drivers/net/geneve.c > +++ b/drivers/net/geneve.c > @@ -1521,9 +1521,10 @@ static void geneve_link_config(struct net_device *dev, > rt = rt6_lookup(geneve->net, &info->key.u.ipv6.dst, NULL, 0, > NULL, 0); > > - if (rt && rt->dst.dev) > + if (rt && rt->dst.dev) { > ldev_mtu = rt->dst.dev->mtu - GENEVE_IPV6_HLEN; > - ip6_rt_put(rt); > + ip6_rt_put(rt); > + } > break; > } > #endif Are you sure rt6_lookup can never return a non-NULL rt with rt->dst.dev being NULL? You'd leak the reference in such case. Jiri