From patchwork Tue Nov 1 15:26:01 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johan Hovold X-Patchwork-Id: 689972 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [103.22.144.68]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3t7b202zmcz9t2N for ; Wed, 2 Nov 2016 02:36:56 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=Wp9aOSzl; dkim-atps=neutral Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3t7b201xSFzDt53 for ; Wed, 2 Nov 2016 02:36:56 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=Wp9aOSzl; dkim-atps=neutral X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Received: from mail-lf0-x244.google.com (mail-lf0-x244.google.com [IPv6:2a00:1450:4010:c07::244]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3t7Zp41Kz4zDt4V for ; Wed, 2 Nov 2016 02:26:36 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=Wp9aOSzl; dkim-atps=neutral Received: by mail-lf0-x244.google.com with SMTP id p100so4603338lfg.2 for ; Tue, 01 Nov 2016 08:26:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=HVYWCIhfQ8A0QkVNiG0rPGulqswgAAETn4VwKuhmrG4=; b=Wp9aOSzlMGeoNR6NfunCq+svuzRyQmwXRGz+VYIMq8f0EYU46Jc7OKjqYXZZMdxyh/ vafRqVV52Fi0w8h6MLqkTGV2Xt0C5AuQtseTCajjfZoODy0lNmp5Pvs5h8vMcDBDnxu5 jG/g7uyabqz2mNCbPXUbJ0zOyWkVjmoMmHGHcggQeoHmtyMTtnB24ErjBCMHkPAE0Y1S xZ9Iwg2YaaJpUC5D6sflChPDcLzr17Yv3SvQWS7QnoV60UrTrmaJhfDNAXtqvs8ZRnAN C8GySGeAWFzp3P3eJUL7i8LP3QlH8O5Tki8cE1rUwMcvnFy3QBrOgXeFxhhKysn/1BxU xStQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=HVYWCIhfQ8A0QkVNiG0rPGulqswgAAETn4VwKuhmrG4=; b=fnwrlb7OW+MrUwd0wlmVccSJxsxb1vOLCqeiNwJAHi1umaL4swVQAiD3o2cm8N4V6G zoBCXcx/9EW+udVqu+gJvt2MjZv+cI5WBDdoJca84f1h/szO8Esa74E0sX2SDmEu8Vua oQcfWQOidNeSALdw6we0KSqV/fTe43x5/d2tKMu/OqI3G1Osoj4NgB3zqXlReQPn65Jl X88eeEXDivo2jCxmfjV48bM5dagkjBYICBJvYuvPhFc0Umg0/w6AZVuQ7d/uw6Fr5+Dq AArHpcP446SowTIzbHpbp/sKUXwy+gJKXlZOGwxMQpJlD62mfcigRx6tdgmo799guqwv DHUw== X-Gm-Message-State: ABUngvfJ9qjz5cn6LavEp9WTyL4/aof5E7MEvDrf5tcHPr6UsI8uYPEVXDkLNzYKv49tig== X-Received: by 10.25.221.208 with SMTP id w77mr10812273lfi.39.1478013991608; Tue, 01 Nov 2016 08:26:31 -0700 (PDT) Received: from xi.terra (c-04aadb54.07-184-6d6c6d4.cust.bredbandsbolaget.se. [84.219.170.4]) by smtp.gmail.com with ESMTPSA id 5sm1350927ljf.18.2016.11.01.08.26.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 01 Nov 2016 08:26:31 -0700 (PDT) Received: from johan by xi.terra with local (Exim 4.87) (envelope-from ) id 1c1axL-0007Wl-3j; Tue, 01 Nov 2016 16:26:31 +0100 From: Johan Hovold To: Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman Subject: [PATCH 2/4] ibmebus: fix further device reference leaks Date: Tue, 1 Nov 2016 16:26:01 +0100 Message-Id: <1478013963-28871-2-git-send-email-johan@kernel.org> X-Mailer: git-send-email 2.7.3 In-Reply-To: <1478013963-28871-1-git-send-email-johan@kernel.org> References: <1478013963-28871-1-git-send-email-johan@kernel.org> X-Mailman-Approved-At: Wed, 02 Nov 2016 02:33:49 +1100 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linuxppc-dev@lists.ozlabs.org, Johan Hovold Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" Make sure to drop any reference taken by bus_find_device() when creating devices during init and driver registration. Fixes: 55347cc9962f ("[POWERPC] ibmebus: Add device creation...) Signed-off-by: Johan Hovold --- arch/powerpc/kernel/ibmebus.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/arch/powerpc/kernel/ibmebus.c b/arch/powerpc/kernel/ibmebus.c index c7d3ff7e101c..35f5244782d9 100644 --- a/arch/powerpc/kernel/ibmebus.c +++ b/arch/powerpc/kernel/ibmebus.c @@ -180,6 +180,7 @@ static int ibmebus_create_device(struct device_node *dn) static int ibmebus_create_devices(const struct of_device_id *matches) { struct device_node *root, *child; + struct device *dev; int ret = 0; root = of_find_node_by_path("/"); @@ -188,9 +189,12 @@ static int ibmebus_create_devices(const struct of_device_id *matches) if (!of_match_node(matches, child)) continue; - if (bus_find_device(&ibmebus_bus_type, NULL, child, - ibmebus_match_node)) + dev = bus_find_device(&ibmebus_bus_type, NULL, child, + ibmebus_match_node); + if (dev) { + put_device(dev); continue; + } ret = ibmebus_create_device(child); if (ret) {