Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp756877ybl; Wed, 8 Jan 2020 05:25:09 -0800 (PST) X-Google-Smtp-Source: APXvYqxXlNe9D1lv1uRf5OeCqhXf/HsI79e0gaUy0EQkqZrAqajU60kGT3LJcdhb1n9PtPr2LTK7 X-Received: by 2002:aca:1012:: with SMTP id 18mr2795662oiq.151.1578489909132; Wed, 08 Jan 2020 05:25:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1578489909; cv=none; d=google.com; s=arc-20160816; b=CWqHuWe89lLRnPpmZ034l1GpMSo0kZICP0sJrI3j5uC0QCG7GhJOQhnaYT8KboU0ay Iv68a4rPita9TPZyVItPiSjt0YjMD+EedAWGDPiE6cUP0oS8bryzgq1DJatBGrxE54/O WBkJsoDv/rD4ViyigL+UQ7hmEB06rQCKU8oJ/lBAJQUHIy5vViYaYvfAIX0U4GioVvEr CVqH/kj3jskK6/BmM3ptzdBv1kaFwaw3UxT32guWmzlpMC9zHWcO4jkOFHfupRVmm1On codIhszYoiDkrtFId+Sn6ABWPUkWuIbXMcexfTlV2wY1sXW9EsA9yKR9FI+60Sinkh6s w5cQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:cms-type:message-id:date :subject:cc:to:from:dkim-signature:dkim-filter; bh=vlkCVhdICE1g4MM364vsZ5VbqdQdf/4uTZNggyFrW9Q=; b=RHEhEzeSqFBcN7L5u1BvDgTZZdmeCJGMslAZH7Ye+7AWBOCz+VDnZob507jKGhIyAo 5AFIWg1ApQoUBMtjmKp9J89pG2iyCW82TvZz32+1SPAMYnNABNXp4ct+yVN+5/TsYqGT Quj2qkPiH0cJFrFTMSJlSuASxayj33NZKmQ4uCYbcp9FETm205kQjS94YJRKI1v7+LbG DWRCekKpjMXRI31T7T5kAfSlWviYug78mvAVa34WrNDlKKoWyNTjC1TL12QrAoxbFCSk 52zlzxRh8vQBcWrRPuVaWKWejBSP6GSCu+S9f6B52cZwq1QTGZkvZXb/wjRLpniDrm8t a+OA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=c+yxA71N; 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=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h17si1694150oih.53.2020.01.08.05.24.56; Wed, 08 Jan 2020 05:25:09 -0800 (PST) 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; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=c+yxA71N; 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=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728062AbgAHNXx (ORCPT + 99 others); Wed, 8 Jan 2020 08:23:53 -0500 Received: from mailout1.w1.samsung.com ([210.118.77.11]:36891 "EHLO mailout1.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726900AbgAHNXx (ORCPT ); Wed, 8 Jan 2020 08:23:53 -0500 Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20200108132350euoutp010cd00d5023f8871d360de60da3ffce8b~n7CNLlswU1848818488euoutp01h for ; Wed, 8 Jan 2020 13:23:50 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20200108132350euoutp010cd00d5023f8871d360de60da3ffce8b~n7CNLlswU1848818488euoutp01h DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1578489830; bh=vlkCVhdICE1g4MM364vsZ5VbqdQdf/4uTZNggyFrW9Q=; h=From:To:Cc:Subject:Date:References:From; b=c+yxA71Nh794nkg8brjoYvYsl+7euFKaCoYjvBhR4cuQfWfK2MpHSagOv1X6m/ZyG D78NGdeQMEmVBYRGElwW/2joIynCcLz/r1n7Ia7OjKj5vfpQP4wh0oHSMd3QSLhPPo oKcqN7kmqIBjEFYpaMTtObtd4XcLarAFjXcEb83A= Received: from eusmges3new.samsung.com (unknown [203.254.199.245]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20200108132350eucas1p2d58bb50b50d3336746802bbfb32a5d17~n7CNAQeuR1278412784eucas1p2Z; Wed, 8 Jan 2020 13:23:50 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges3new.samsung.com (EUCPMTA) with SMTP id 3D.AF.60698.6E7D51E5; Wed, 8 Jan 2020 13:23:50 +0000 (GMT) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20200108132350eucas1p1476f4aa038dbf5ea199b84c5c82a25a5~n7CMqvSkY1935519355eucas1p10; Wed, 8 Jan 2020 13:23:50 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20200108132350eusmtrp250a3eb32693a004f118db0c56523ce66~n7CMqEuz61195311953eusmtrp2s; Wed, 8 Jan 2020 13:23:50 +0000 (GMT) X-AuditID: cbfec7f5-a29ff7000001ed1a-9f-5e15d7e6d122 Received: from eusmtip1.samsung.com ( [203.254.199.221]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id 44.A1.08375.6E7D51E5; Wed, 8 Jan 2020 13:23:50 +0000 (GMT) Received: from AMDC2765.digital.local (unknown [106.120.51.73]) by eusmtip1.samsung.com (KnoxPortal) with ESMTPA id 20200108132349eusmtip15b9cf16c83a41c808627c1c7bb3f8eb5~n7CMN4Dh91653416534eusmtip1P; Wed, 8 Jan 2020 13:23:49 +0000 (GMT) From: Marek Szyprowski To: linux-samsung-soc@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Kishon Vijay Abraham I , Alexandre Torgue , Bartlomiej Zolnierkiewicz , Krzysztof Kozlowski , Marek Szyprowski Subject: [PATCH] phy: core: Fix error path in devm_of_phy_get() Date: Wed, 8 Jan 2020 14:23:42 +0100 Message-Id: <20200108132342.14635-1-m.szyprowski@samsung.com> X-Mailer: git-send-email 2.17.1 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrPIsWRmVeSWpSXmKPExsWy7djPc7rProvGGbQvk7XY+OQ0o8XGGetZ LS487WGzOH9+A7vF5V1z2CxmnN/HZLH2yF12B3aPTas62Tz6tqxi9Hj6Yy+zx/Eb25k8Pm+S C2CN4rJJSc3JLEst0rdL4MqYe/QIW8FJ0Yq5c86wNDB+F+pi5OSQEDCRmLXqBFsXIxeHkMAK Rol9W/YyQzhfGCU+bnnHDFIlJPCZUeL7cT6YjnX9qxkhipYzSnxdMokJruPoyeWMIFVsAoYS XW+72EBsEQFVic9tC9hBipgFWpgkLr7azASSEBawl1h0ZQeYzQJU1P5yDyuIzStgK/Gu/RAr xDp5idUbDoDdJCFwmU1i5sczjBAJF4kn626zQ9jCEq+Ob4GyZST+75zPBNHQzCjx8Nxadgin h1HictMMqG5riTvnfgHdxwF0k6bE+l36EGFHif1PprOChCUE+CRuvBUECTMDmZO2TWeGCPNK dLRBA09NYtbxdXBrD164BFXiIXF8bgAk5GIlVl9byD6BUW4WwqoFjIyrGMVTS4tz01OLjfNS y/WKE3OLS/PS9ZLzczcxApPB6X/Hv+5g3Pcn6RCjAAejEg/vj8UicUKsiWXFlbmHGCU4mJVE eLV0gEK8KYmVValF+fFFpTmpxYcYpTlYlMR5jRe9jBUSSE8sSc1OTS1ILYLJMnFwSjUwel45 UlrDteH55ZNNZrvS3lmFNPGc9mbX4NwZ8dI65np1pswGufLTfDJJaSsO8i/Vvr7Duf6Ewkfv pyzq4jxvr5yffV2F6UdgneAPp4wb2Xlr/u+WbszZtOXBQZ9nght2PKu7e91j1eXTfKbnru3I 43RuTyh7pfzKw+3El/Vz52+Q4wl8ZHvzvRJLcUaioRZzUXEiAPbOXPYCAwAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrGLMWRmVeSWpSXmKPExsVy+t/xu7rProvGGTQ9YbfY+OQ0o8XGGetZ LS487WGzOH9+A7vF5V1z2CxmnN/HZLH2yF12B3aPTas62Tz6tqxi9Hj6Yy+zx/Eb25k8Pm+S C2CN0rMpyi8tSVXIyC8usVWKNrQw0jO0tNAzMrHUMzQ2j7UyMlXSt7NJSc3JLEst0rdL0MuY e/QIW8FJ0Yq5c86wNDB+F+pi5OSQEDCRWNe/mrGLkYtDSGApo8Sd85vYIBIyEienNbBC2MIS f651sUEUfWKUeHlgJ1iCTcBQouttF1iDiICqxOe2BewgRcwCHUwSR2f2soMkhAXsJRZd2cEE YrMAFbW/3APWzCtgK/Gu/RDUBnmJ1RsOME9g5FnAyLCKUSS1tDg3PbfYUK84Mbe4NC9dLzk/ dxMjMAy3Hfu5eQfjpY3BhxgFOBiVeHh/LBaJE2JNLCuuzD3EKMHBrCTCq6UDFOJNSaysSi3K jy8qzUktPsRoCrR8IrOUaHI+MEbySuINTQ3NLSwNzY3Njc0slMR5OwQOxggJpCeWpGanphak FsH0MXFwSjUwssaqhrNlpp9Xn3Hsz3KhczyG8yP8p61bOmNN7L5Unu//WAx3T1gfLPGg/frx zk1OE/qV6kItdu8wfmNl/E+H7eKEp8mn32mkT5oWYFzKN7tmiteb8/ziTUq8FROexUrbl6qc naH2ODA222wzx+oJp/saNjXM4LusJsL3ilH0lq2Lj9Z8/fVrlFiKMxINtZiLihMBatS9aFkC AAA= X-CMS-MailID: 20200108132350eucas1p1476f4aa038dbf5ea199b84c5c82a25a5 X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-RootMTR: 20200108132350eucas1p1476f4aa038dbf5ea199b84c5c82a25a5 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20200108132350eucas1p1476f4aa038dbf5ea199b84c5c82a25a5 References: Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit 5253fe05bb47 ("phy: core: Add consumer device link support") added support for consumer device links, but it missed proper update for error handling in devm_of_phy_get(). Fix this by adding proper return statement. This patch fixes the following invalid pointer dereference on Exynos5250-based Arndale board with multi_v7_defconfig: 8<--- cut here --- Unable to handle kernel paging request at virtual address fffffe7f pgd = (ptrval) [fffffe7f] *pgd=6ffff841, *pte=00000000, *ppte=00000000 Internal error: Oops: 27 [#1] SMP ARM Modules linked in: CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.5.0-rc5-next-20200108 #167 Hardware name: Samsung Exynos (Flattened Device Tree) PC is at device_link_add+0x68/0x4c4 LR is at device_link_add+0x68/0x4c4 ... Process swapper/0 (pid: 1, stack limit = 0x(ptrval)) ... [] (device_link_add) from [] (devm_of_phy_get+0x6c/0xb0) [] (devm_of_phy_get) from [] (ahci_platform_get_phy+0x28/0xe0) [] (ahci_platform_get_phy) from [] (ahci_platform_get_resources+0x398/0x48c) [] (ahci_platform_get_resources) from [] (ahci_probe+0x14/0xb4) [] (ahci_probe) from [] (platform_drv_probe+0x48/0x9c) [] (platform_drv_probe) from [] (really_probe+0x1dc/0x33c) [] (really_probe) from [] (driver_probe_device+0x60/0x164) [] (driver_probe_device) from [] (device_driver_attach+0x58/0x60) [] (device_driver_attach) from [] (__driver_attach+0x80/0xbc) [] (__driver_attach) from [] (bus_for_each_dev+0x68/0xb4) [] (bus_for_each_dev) from [] (bus_add_driver+0x160/0x1e4) [] (bus_add_driver) from [] (driver_register+0x78/0x10c) [] (driver_register) from [] (do_one_initcall+0x54/0x220) [] (do_one_initcall) from [] (kernel_init_freeable+0x150/0x1b4) [] (kernel_init_freeable) from [] (kernel_init+0x8/0x10c) [] (kernel_init) from [] (ret_from_fork+0x14/0x2c) ... Fixes: 5253fe05bb47 ("phy: core: Add consumer device link support") Signed-off-by: Marek Szyprowski --- drivers/phy/phy-core.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c index 8dfb4868c8c3..2eb28cc2d2dc 100644 --- a/drivers/phy/phy-core.c +++ b/drivers/phy/phy-core.c @@ -799,6 +799,7 @@ struct phy *devm_of_phy_get(struct device *dev, struct device_node *np, devres_add(dev, ptr); } else { devres_free(ptr); + return phy; } link = device_link_add(dev, &phy->dev, DL_FLAG_STATELESS); -- 2.17.1