{"id":807816,"url":"http://patchwork.ozlabs.org/api/1.0/patches/807816/?format=json","project":{"id":7,"url":"http://patchwork.ozlabs.org/api/1.0/projects/7/?format=json","name":"Linux network development","link_name":"netdev","list_id":"netdev.vger.kernel.org","list_email":"netdev@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null},"msgid":"<20170830174651.30325-6-clabbe.montjoie@gmail.com>","date":"2017-08-30T17:46:51","name":"[5/5] net: mdio-mux: fix unbalanced put_device","commit_ref":null,"pull_url":null,"state":"changes-requested","archived":true,"hash":"fd658f58baf90abda5e0073c5d8f6bb4b9ee936e","submitter":{"id":64152,"url":"http://patchwork.ozlabs.org/api/1.0/people/64152/?format=json","name":"Corentin Labbe","email":"clabbe.montjoie@gmail.com"},"delegate":{"id":34,"url":"http://patchwork.ozlabs.org/api/1.0/users/34/?format=json","username":"davem","first_name":"David","last_name":"Miller","email":"davem@davemloft.net"},"mbox":"http://patchwork.ozlabs.org/project/netdev/patch/20170830174651.30325-6-clabbe.montjoie@gmail.com/mbox/","series":[{"id":673,"url":"http://patchwork.ozlabs.org/api/1.0/series/673/?format=json","date":"2017-08-30T17:46:51","name":"net: mdio-mux: Misc fix","version":1,"mbox":"http://patchwork.ozlabs.org/series/673/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/807816/checks/","tags":{},"headers":{"Return-Path":"<netdev-owner@vger.kernel.org>","X-Original-To":"patchwork-incoming@ozlabs.org","Delivered-To":"patchwork-incoming@ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"hOQXgedD\"; dkim-atps=neutral"],"Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xjCgF0QHRz9sQl\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 03:49:13 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751899AbdH3RtI (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tWed, 30 Aug 2017 13:49:08 -0400","from mail-wm0-f67.google.com ([74.125.82.67]:35064 \"EHLO\n\tmail-wm0-f67.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1751814AbdH3RtF (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Wed, 30 Aug 2017 13:49:05 -0400","by mail-wm0-f67.google.com with SMTP id e204so2545063wma.2;\n\tWed, 30 Aug 2017 10:49:05 -0700 (PDT)","from Red.local (LFbn1-1-65-78.w90-118.abo.wanadoo.fr.\n\t[90.118.156.78]) by smtp.googlemail.com with ESMTPSA id\n\ti75sm4578429wri.81.2017.08.30.10.49.03\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);\n\tWed, 30 Aug 2017 10:49:04 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=gmail.com; s=20161025;\n\th=from:to:cc:subject:date:message-id:in-reply-to:references;\n\tbh=tE2g32dBz088/13vyk9sWYfoWE+ifObOsIHEJkNPdgQ=;\n\tb=hOQXgedDqNqvim+NI/qXKZw3OrSz0XllE3c2xzkAM6I/v9amgt5jGsKzfMRLNk951W\n\tTYvTHzOPWskqtOqb+BKTTzSUb/20r4dQdkGiUI+VM8XvHbjh1gOXtL9VyeNz9YEj36KQ\n\tn0g/HhA4d0Fd2VD6Ysk5Kb5NKwl8ri2efW9MLi7DA/2TVfjSJpUpbs4aOADcApgN6DmN\n\tt0iD14WWLyau8IKZ2nbBg52HtsweXR6jXrq1noSoNaWiL08dT7UC/vz5PsadnbnBwHli\n\tNOYY1b/c9bBLJLlDH3/DPe3qt6I3Xad9Wy8KVpNI5sFBbi3ULCC8zSF3dW6zMmB73dLm\n\tUMFA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references;\n\tbh=tE2g32dBz088/13vyk9sWYfoWE+ifObOsIHEJkNPdgQ=;\n\tb=CV3R3q32pAob7Lq0/uhfZ3s3FY0x/lKeZGgB6UGPyjcEptUFFvwOLFt2wTejj7VwgZ\n\tnnbK6UvB2IurbChUciwwrlFnUSRIjSoxCqBj26/AXIjcQQzCB+B65tuDfPU0txqaD86o\n\tSLdnnhn05LOoESro6/195qVfZfpcB2c6nSoJqNTinrg5KFV5/NndhFipknRjJy7mONDN\n\t+BVuK6QyEytQotyVb4ZKF5eQhfP91c39feIYVyzPZrzMiB8svS36zCguZYD16GV/rqf7\n\t9A3IojE99xTY36BmeNEAqFNjvSVBZWwzr44vUShJhoK7NkO3JE1Bm5p3Y030Lni/DTtN\n\t7kvg==","X-Gm-Message-State":"AHYfb5j0IjgibkxQ3REd1V4lIoU/pgxnlCDLVaDYSM245P8kJvANh2vR\n\t4/aRCXxlrt40sA==","X-Received":"by 10.28.17.10 with SMTP id 10mr1653425wmr.74.1504115344507;\n\tWed, 30 Aug 2017 10:49:04 -0700 (PDT)","From":"Corentin Labbe <clabbe.montjoie@gmail.com>","To":"andrew@lunn.ch, f.fainelli@gmail.com","Cc":"netdev@vger.kernel.org, linux-kernel@vger.kernel.org,\n\tCorentin Labbe <clabbe.montjoie@gmail.com>","Subject":"[PATCH 5/5] net: mdio-mux: fix unbalanced put_device","Date":"Wed, 30 Aug 2017 19:46:51 +0200","Message-Id":"<20170830174651.30325-6-clabbe.montjoie@gmail.com>","X-Mailer":"git-send-email 2.13.5","In-Reply-To":"<20170830174651.30325-1-clabbe.montjoie@gmail.com>","References":"<20170830174651.30325-1-clabbe.montjoie@gmail.com>","Sender":"netdev-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<netdev.vger.kernel.org>","X-Mailing-List":"netdev@vger.kernel.org"},"content":"mdio_mux_uninit() call put_device (unconditionally) because of\nof_mdio_find_bus() in mdio_mux_init.\nBut of_mdio_find_bus is only called if mux_bus is empty.\nIf mux_bus is set, mdio_mux_uninit will print a \"refcount_t: underflow\"\ntrace.\n\nThis patch add a get_device in the other branch of \"if (mux_bus)\".\n\nSigned-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>\n---\n drivers/net/phy/mdio-mux.c | 4 ++--\n 1 file changed, 2 insertions(+), 2 deletions(-)","diff":"diff --git a/drivers/net/phy/mdio-mux.c b/drivers/net/phy/mdio-mux.c\nindex 9a889a529b9c..0b7d3d30ae97 100644\n--- a/drivers/net/phy/mdio-mux.c\n+++ b/drivers/net/phy/mdio-mux.c\n@@ -117,6 +117,7 @@ int mdio_mux_init(struct device *dev,\n \t} else {\n \t\tparent_bus_node = NULL;\n \t\tparent_bus = mux_bus;\n+\t\tget_device(&parent_bus->dev);\n \t}\n \n \tpb = devm_kzalloc(dev, sizeof(*pb), GFP_KERNEL);\n@@ -186,8 +187,7 @@ int mdio_mux_init(struct device *dev,\n \tdevm_kfree(dev, pb);\n err_pb_kz:\n \t/* balance the reference of_mdio_find_bus() took */\n-\tif (!mux_bus)\n-\t\tput_device(&parent_bus->dev);\n+\tput_device(&parent_bus->dev);\n err_parent_bus:\n \tof_node_put(parent_bus_node);\n \treturn ret_val;\n","prefixes":["5/5"]}