Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp1886000pxa; Mon, 3 Aug 2020 01:28:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxOt2m1qx5ziJoK6fXtioscRynHDxI7sDwaQ26LMq8j/CXelGT1x49fVOfALk2U7UpBQjlu X-Received: by 2002:aa7:cc98:: with SMTP id p24mr15153527edt.333.1596443300835; Mon, 03 Aug 2020 01:28:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1596443300; cv=none; d=google.com; s=arc-20160816; b=StB9qv+5M3WsLf54Aa17eGjHfkitASw/tU+sFb8BUJBtJijArUoHHb0TfyGYV7orvf aArprAMWh8+9121hgmbscsd5c8OdVXn2gBAKo9ACmIX47SrbbC36TeETLo+YZ3ymSSen paaDe47VgSdR0kYbWB9bO2bkoMrzwORQ33QAoDo8Gj6xJ0sqUWBmw/FznbrBH5nbydi9 x18hkFd2UmkJio0PZ4V60Wf6zOWjOSlFGbdBUrbijJuQikYTzwC6ghKhc2b59lL8hkbE ImeP/jjT9cAFgcfJ/94b7pmeRzbnWoh8x4m5D8BYbCNx1VrKriywLsqW7r+cBlAorTvI +Gjw== 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 :message-id:date:subject:cc:to:from:ironport-sdr:ironport-sdr; bh=mCsO4a23BijgNgyQpoYNbvcDSLseZRwk7duQXRnRNag=; b=mYgAvNnhIkLFAkuxia6BnVBBqZ4jD7LKaovCF9yt4qhDodNJ4qSoK9sPwFL2hFNwrD SW9Y0rljts04E7Fwo0AiIrC9BvmONX1BE1bJ8vFPGnIUW+uJkjpj2xqGA5uiVpmyE5o2 m6b769YNdPWSHnGdXQL9mSyc5xagZuWdRu1bgpxbXDSsg5t5oFMK6NEIbvDS6XgjkIgP j9A3J/zfpTXLfaumBwpTdPikMBwtEwwFN/9NRwmZ4SitjYEJsN3p9u7NMr/Bgk9lFbLi l3VU8Hb2z1E29bqvjSbs+pk/Z9ute5VA28TAQYp58yiIPrEygJgUof+N0zU993Y44Dq6 rsoA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a92si7068839edf.509.2020.08.03.01.27.58; Mon, 03 Aug 2020 01:28:20 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726034AbgHCI1K (ORCPT + 99 others); Mon, 3 Aug 2020 04:27:10 -0400 Received: from mga01.intel.com ([192.55.52.88]:63452 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725806AbgHCI1K (ORCPT ); Mon, 3 Aug 2020 04:27:10 -0400 IronPort-SDR: SATrK+f+aqQczKjrXx43vHFHoMWael5mZpRbuh3T0nxTPNNbBwSI3rb3cVKvoXTl6XLy8jjYP6 o4Ku3GtJ3Gvw== X-IronPort-AV: E=McAfee;i="6000,8403,9701"; a="170166624" X-IronPort-AV: E=Sophos;i="5.75,429,1589266800"; d="scan'208";a="170166624" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Aug 2020 01:27:09 -0700 IronPort-SDR: 8+bUHXn2S5GBUnIYcgAzabJaDshi2Df9aXOOBl4rS8SroGk+W9D13jd5jsB5VK0UtKasj9sQi5 JDikYO7oaT8g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,429,1589266800"; d="scan'208";a="331819023" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga007.jf.intel.com with ESMTP; 03 Aug 2020 01:27:08 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 46EC9130; Mon, 3 Aug 2020 11:27:07 +0300 (EEST) From: Andy Shevchenko To: Greg Kroah-Hartman , linux-kernel@vger.kernel.org, "Rafael J. Wysocki" Cc: Andy Shevchenko , Qu Wenruo , Heikki Krogerus Subject: [PATCH v2] kobject: Restore old behaviour of kobject_del(NULL) Date: Mon, 3 Aug 2020 11:27:06 +0300 Message-Id: <20200803082706.65347-1-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The commit 079ad2fb4bf9 ("kobject: Avoid premature parent object freeing in kobject_cleanup()") inadvertently dropped a possibility to call kobject_del() with NULL pointer. Restore the old behaviour. Fixes: 079ad2fb4bf9 ("kobject: Avoid premature parent object freeing in kobject_cleanup()") Reported-by: Qu Wenruo Cc: Heikki Krogerus Signed-off-by: Andy Shevchenko --- v2: replaced ?: with plain conditional (Greg) lib/kobject.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/kobject.c b/lib/kobject.c index 3afb939f2a1c..9dce68c378e6 100644 --- a/lib/kobject.c +++ b/lib/kobject.c @@ -637,8 +637,12 @@ static void __kobject_del(struct kobject *kobj) */ void kobject_del(struct kobject *kobj) { - struct kobject *parent = kobj->parent; + struct kobject *parent; + + if (!kobj) + return; + parent = kobj->parent; __kobject_del(kobj); kobject_put(parent); } -- 2.27.0