From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751905AbcJRKqq (ORCPT ); Tue, 18 Oct 2016 06:46:46 -0400 Received: from mailout2.w1.samsung.com ([210.118.77.12]:56853 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753461AbcJRKqh (ORCPT ); Tue, 18 Oct 2016 06:46:37 -0400 X-AuditID: cbfec7f5-f79ce6d000004c54-af-5805fd88623d Subject: Re: [PATCH v5 0/5] Functional dependencies between devices To: "Rafael J. Wysocki" , Linux PM list Cc: Greg Kroah-Hartman , Alan Stern , Linux Kernel Mailing List , Tomeu Vizoso , Mark Brown , Lukas Wunner , Kevin Hilman , Ulf Hansson , "Luis R. Rodriguez" From: Marek Szyprowski Message-id: Date: Tue, 18 Oct 2016 12:46:30 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-version: 1.0 In-reply-to: <13957403.ZrB4mMbICz@vostro.rjw.lan> Content-type: text/plain; charset=utf-8; format=flowed Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrOKsWRmVeSWpSXmKPExsWy7djPc7qdf1kjDNZtYbaY+vAJm0Xz4vVs Fk83P2ayuLxrDpvF594jjBYvnktbPD+5l9nizOlLrBYTfl9gs+hbe4nN4vjacAdujx13lzB6 bFrVyeZx59oeNo/9c9ewe2y52s7iMfvuD0aP9Vuusnh83iTnMaN9G2sAZxSXTUpqTmZZapG+ XQJXxsIDv9gKbnBXrDjVxdLAuIazi5GTQ0LAROL75ecsELaYxIV769m6GLk4hASWMkp0PN7P COF8ZpR4+foWE0xH4/WPTBCJZYwS3Yt6WSGc54wSK6/dYAWpEhZwlni15icbiC0iEC5xbNMq sCJmgd9MEg/nN4El2AQMJbredoHZvAJ2EicnHgJbwSKgKjG57SM7iC0qECNxe8o1ZogaQYkf k++BHcsJ1Pt+6yewGmYBK4ln/1pZIWx5ic1r3jKDLJMQuMUu8bjvCNACDiBHVmLTAWYI00Xi 3bsaiG+EJV4d38IOYctIXJ7cDQ2LfkaJplZtCHsGo8S5t7wQtrXE4eMXoVbxSUzaNh1qJK9E R5sQRImHxOm/a6FGOkpcW7ObHRI+qxklLr28zz6BUX4Wkm9mIflgFpIPFjAyr2IUSS0tzk1P LTbVK07MLS7NS9dLzs/dxAhMTqf/Hf+6g3HpMatDjAIcjEo8vBuusEQIsSaWFVfmHmKU4GBW EuH99I01Qog3JbGyKrUoP76oNCe1+BCjNAeLkjjvngVXwoUE0hNLUrNTUwtSi2CyTBycUg2M BayJSm7MU0LCiuWDZuaVsTSJ3loS3yX75ZdDytc3wZnnuDrP5ubt5uzmdpI//LHtUNq+DqW6 rqdab75vP7PtSFQ90BQ5powDUQufPdD+mWL+q9NP6KiKnpCO8Wevy/mN185tW7jUMUdv08LX 36ffr7svXVUhFnvk9aflu+aePn1r5rLu7slKLMUZiYZazEXFiQCOqKMFSgMAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrBIsWRmVeSWpSXmKPExsVy+t/xq7opf1kjDPZd57aY+vAJm0Xz4vVs Fk83P2ayuLxrDpvF594jjBYvnktbPD+5l9nizOlLrBYTfl9gs+hbe4nN4vjacAdujx13lzB6 bFrVyeZx59oeNo/9c9ewe2y52s7iMfvuD0aP9Vuusnh83iTnMaN9G2sAZ5SbTUZqYkpqkUJq XnJ+SmZeuq1SaIibroWSQl5ibqqtUoSub0iQkkJZYk4pkGdkgAYcnAPcg5X07RLcMhYe+MVW cIO7YsWpLpYGxjWcXYycHBICJhKN1z8yQdhiEhfurWfrYuTiEBJYwihxdfEndpCEkMBzRokt pytAbGEBZ4lXa36ygdgiAuESv078YIFoWM0o0XhjBROIwyzwm0niy/d5YN1sAoYSXW+7wDp4 BewkTk48BLaORUBVYnLbR7AaUYEYievPHkHVCEr8mHyPBcTmBOp9vxXiCmYBM4kvLw+zQtjy EpvXvGWewCgwC0nLLCRls5CULWBkXsUoklpanJueW2ykV5yYW1yal66XnJ+7iREYq9uO/dyy g7HrXfAhRgEORiUe3g1XWCKEWBPLiitzDzFKcDArifB++sYaIcSbklhZlVqUH19UmpNafIjR FOiJicxSosn5wDSSVxJvaGJobmloZGxhYW5kpCTOO/XDlXAhgfTEktTs1NSC1CKYPiYOTqkG Ro0vvBz7uPKW/WgQ5rdIszbfKHYsrrb62UqbJs7p3T8ebl+ned7hnIKL//XcOVWr4iolNZaa zTRQi51XcsLu1murWYv5uJ8eu6dS6PTx5ixdhjWrjwfO4vBgd5vmfEL8q3X12rUtvanRUQ3b N0QbtlZLvNlxmG+9xBupKMtP3okFagVXEq+wK7EUZyQaajEXFScCAH0kp1PrAgAA X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20161018104632eucas1p1d447ebb43289262b776236bbcdcf6d0b X-Msg-Generator: CA X-Sender-IP: 182.198.249.180 X-Local-Sender: =?UTF-8?B?TWFyZWsgU3p5cHJvd3NraRtTUlBPTC1LZXJuZWwgKFRQKRs=?= =?UTF-8?B?7IK87ISx7KCE7J6QG1NlbmlvciBTb2Z0d2FyZSBFbmdpbmVlcg==?= X-Global-Sender: =?UTF-8?B?TWFyZWsgU3p5cHJvd3NraRtTUlBPTC1LZXJuZWwgKFRQKRtT?= =?UTF-8?B?YW1zdW5nIEVsZWN0cm9uaWNzG1NlbmlvciBTb2Z0d2FyZSBFbmdpbmVlcg==?= X-Sender-Code: =?UTF-8?B?QzEwG0VIURtDMTBDRDAyQ0QwMjczOTI=?= CMS-TYPE: 201P X-HopCount: 7 X-CMS-RootMailID: 20161010125153eucas1p2b86325c046d3e0d0b6275abd000ea096 X-RootMTR: 20161010125153eucas1p2b86325c046d3e0d0b6275abd000ea096 References: <27296716.H9VWo8ShOm@vostro.rjw.lan> <13957403.ZrB4mMbICz@vostro.rjw.lan> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Rafael, On 2016-10-10 14:36, Rafael J. Wysocki wrote: > [...] > > One more update after some conversations during LinuxCon Europe. > > The main point was to make it possible for device_link_add() to figure out the > initial state of the link instead of expecting the caller to provide it which > might not be reliable enough in general. > > In this version device_link_add() takes three arguments, the supplier and > consumer pointers and flags and it sets the correct initial state of the link > automatically (unless invoked with the "stateless" flag, of course). The cost > is one additional field in struct device (I moved all of the links-related > fields in struct device to a separate sub-structure while at it) to track > the "driver presence status" of the device (to be used by device_link_add()). > > In addition to that, the links list walks in the core.c and dd.c code are > under the device links mutex now, so the iternal link spinlock is not needed > any more and I have renamed symbols to distinguish between flags, link states > and device "driver presence statuses". > > More information is there in the changelogs. Thanks for the update. This version is indeed easier to use and still works fine with my Exynos IOMMU runtime pm rework. You can keep my: Tested-by: Marek Szyprowski I will send updated version of my patchset soon. Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland