From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754011AbbIXUqR (ORCPT ); Thu, 24 Sep 2015 16:46:17 -0400 Received: from mail-bn1on0054.outbound.protection.outlook.com ([157.56.110.54]:18800 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753951AbbIXUqO (ORCPT ); Thu, 24 Sep 2015 16:46:14 -0400 Authentication-Results: spf=fail (sender IP is 66.35.236.227) smtp.mailfrom=opensource.altera.com; infradead.org; dkim=none (message not signed) header.d=none;infradead.org; dmarc=none action=none header.from=opensource.altera.com; Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=atull@opensource.altera.com; Date: Thu, 24 Sep 2015 15:24:52 -0500 From: atull X-X-Sender: atull@linuxheads99 To: Josh Cartwright CC: , , , , , , Moritz Fischer , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Petr Cvek , , Subject: Re: [PATCH v11 3/4] add FPGA manager core In-Reply-To: <20150923230315.GF26335@jcartwri.amer.corp.natinst.com> Message-ID: References: <1442935271-10375-1-git-send-email-atull@opensource.altera.com> <1442935271-10375-4-git-send-email-atull@opensource.altera.com> <20150922222929.GA26335@jcartwri.amer.corp.natinst.com> <20150923230315.GF26335@jcartwri.amer.corp.natinst.com> User-Agent: Alpine 2.02 (DEB 1266 2009-07-14) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" X-Originating-IP: [64.129.157.38] X-ClientProxiedBy: BN4PR15CA0027.namprd15.prod.outlook.com (25.164.54.165) To BY1PR03MB1516.namprd03.prod.outlook.com (25.162.210.15) X-Microsoft-Exchange-Diagnostics-untrusted: 1;BY1PR03MB1516;2:SuXz5QN/o9YwMzjlI/mmdGq6YLDsKndJrYAjrz3as1OsySauCoCztt6ZdREID0OhEqBpE0twYnCihYBvWSCQV6cVXw/m91JpTlUR+sNzQdUHb7mOeZok5mZx0n8/Szxv0Av7+lQ+nEDpn98AEUHyhP5mSxMuqDlvZ4//lY4vhVw=;3:XCFGU43Yw8q7q0J2kS5pTmDXEWOfnEw/QOEjqPgWFWZUh+g9ibNnJZvYeNu+2VZROeaD3x1YSq2Gb/IL7bfqARhjI2HSKWYEW4O+CMYrlqNyv2C9viBNQ47/m4kdo16Bgs8VOKBF94graUzHPDRWSA==;25:Wc+sQFBrx/CXeaOA1fExTWVmrCwsIPi5YhK51+18ORTb5iBcxtfdNHrsP/nTrqVirqtaJH7K0BDy8ntuv7EHnOVqr93nNxBYzcdhhWDZHoTk3vzzxJSctPj0c1UFHhKUThfPL6IUv9Jg24anlbf+P+K3lJ7dtx4Nkcg9gLm5wxfJmIl8N9CUv21jXqL/+02ZKDo3RZnc6nKnr+qjfZ9qj2JH2kER6bL9t7WqqtRWzJCBy7+unqwIZDrxkeFJe+2J+3HMrbDf3kKNtFDzeYPPhA==;20:Z98OQS9q1PXlUnwJBvx6cBbq2LbRbZ8iqHa8Q2kthm6issojNEoOOa+akTSix1qPDkkDfkdjQJ63Ik9Oos18G+EjKvG8sb79AQnb641FCNk8tgwxFX2uHk6W+ypTmgHB/wgFdyBz8MFzi90btlfoEHs2Nhqus2+MPNnphnnpORM= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY1PR03MB1516;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1504; X-LD-Processed: fbd72e03-d4a5-4110-adce-614d51f2077a,ExtAddr,ExtAddr X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:;UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(5005006)(520078)(3002001);SRVR:BY1PR03MB1516;BCL:0;PCL:0;RULEID:;SRVR:BY1PR03MB1516;BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(5005006)(520078)(3002001);SRVR:CY1PR03MB1504;BCL:0;PCL:0;RULEID:;SRVR:CY1PR03MB1504; X-Microsoft-Exchange-Diagnostics-untrusted: 1;BY1PR03MB1516;4:HuReXlW1cdLeERKNVvuLtJKlR8BN+kC09udnGRZVTlTvwWkLOTJ9TIkOSur0VjZh4xUYmyunDnLFMtqNIKIBXMbBQe8OcX2I+KeFXsCuoY6eat5w2+KTKlbwTQN6P+F7Sg0r2Gp0erbKeCkS+eLvZIVJaOd8L6uThgZ78x8mn198gRtW6Ik5EMILXgpuHBrZasVuesv9Q6ns5u94Dny+fJCLZ1YswE2mUHzcE/ouGOuuuHoG0J9hbkdyuejS0XGWJGXtDD17I8eMQBcDg9SMA68lrvjIRHK8WhBqcHqWzZgjGxxXm8Vg/7ChlXpvhBi8F+mHOh3Ob+H/Ewk4Vw/KByNv1xRZzQ9VNJovdbnk2As= X-Forefront-PRVS: 070912876F X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(6009001)(24454002)(189002)(51914003)(199003)(105586002)(2950100001)(76176999)(93886004)(50986999)(106356001)(42186005)(83506001)(101416001)(50466002)(23726002)(77156002)(54356999)(87976001)(86152002)(62966003)(68736005)(46102003)(33716001)(77096005)(69596002)(53416004)(46406003)(5004730100002)(107886002)(110136002)(122386002)(5001960100002)(5001920100001)(189998001)(92566002)(5001860100001)(5001830100001)(40100003)(47776003)(81156007)(5007970100001)(86362001)(66066001)(64706001)(4001540100001)(97736004)(4001350100001)(7059030)(4001430100001);DIR:OUT;SFP:1101;SCL:1;SRVR:BY1PR03MB1516;H:linuxheads99.altera.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:0;LANG:en; X-Microsoft-Exchange-Diagnostics-untrusted: =?us-ascii?Q?1;BY1PR03MB1516;23:vmbg4xE79G6ZPo/fXEfftMO59fBqzgRrATDTPMmOl?= =?us-ascii?Q?s8MNTzl2MQRsAYlnDc5Jz2mbyD1LqcAURcaCDjordKjAGNbg2wjh0MJHKOMV?= =?us-ascii?Q?MtitThlCi/M0B+Mp9dbANO9Fa/Ajcaj3trw4r1iU54bJNvwjsA5r1slcdefS?= =?us-ascii?Q?2yzJVzbLsGXG7Cg8Ys8eAL0NYglUljQkiFyDTyBFjiWWbG2C2z4sQyBUtsW+?= =?us-ascii?Q?iU3et/Q+Psx2EoGneMrfJIeeYXds+sOYKKouVU8w3q9n99DmWlVXpXM3vgsm?= =?us-ascii?Q?xKy4hne8UkQ6o6o3oNed1D/oeqz2ya3oYd2uOpT7H4bTEnekaiAjbE1xsaxJ?= =?us-ascii?Q?Vy8VEDXmQ8ZPff5Pq6kbqu/5r24TSx3fO0nHgElzJOa/hvKYgzaPG2oi8eGx?= =?us-ascii?Q?YSK9iOz56vhw1BdAr0EAOaDXuD3s6sfnWZbPMH+ZKxm/a4yLlMxBaBUHfZpY?= =?us-ascii?Q?JeA92BaxLhVgJ/DuWFhazCrOVcB4vKsfIWqwtTOdawNJekFCl/AdIM/jLV3B?= =?us-ascii?Q?LJVC8ztIB95n5BXhdlFgjuroEhKyUEQnR54cbNTXhCq0h5FHGnJLtWmZWgrf?= =?us-ascii?Q?gUBB66Okf6xGUHrFDwf6qo0yhmepQHh6eeRz5bw238TWQAD9GbxQBda4cihV?= =?us-ascii?Q?nJKTyP518LeL4FeQnpajafVXlnz3vbHR2RprspH7txxfAbVnhksyqj5/X3p9?= =?us-ascii?Q?KvZuFGMCUUvmO9biRyJqMsXeEi/JZo3KOWuADOPWGO9uNLPZkny2vMtz9xlt?= =?us-ascii?Q?00TYCHaO6r+b7s03jpwwbS9u7tnsq8v8YXbYxWjPRsdkHSr9MqXre2ykbL1l?= =?us-ascii?Q?oVmuwMOec/Hps6ktaJ4yA0MGgN79/IWEpQRkQu58T8Grlk6zmDg/i8DfDpwt?= =?us-ascii?Q?Bw0HCo0jpMn7fYAlsJT2mtNDPEG1rL0HaHfpM5dBmBjwekft7L67UR2hcphV?= =?us-ascii?Q?SRDTbLvRxGiU40NpWGXfohFYr1MkXs4afl0b/KQdXyoltPcgCeVELEmg5ZCP?= =?us-ascii?Q?FBT5G+ZTIv7+VguK2h81qXBaOXG1dpfdMNOZ25Ijag09i7Y0iVU6EgJOfa7P?= =?us-ascii?Q?KxpO5i4u8M6/l1rdAXUIHzTgKrR/sRiuSWXRyNgirkq8L6UwBJEQ44ADhXaP?= =?us-ascii?Q?YEmW+suqicXebJw11A4FYjkt9JZs3o5TMUrUnRBBky04Dpx63D80ocFoz8OH?= =?us-ascii?Q?I5tKWYPKmTYUnBDm1QkCQsw1SUVMg8YRwSVg+L/IvX03RqJQsAjm5a31+/wR?= =?us-ascii?Q?xOdPXVSWQktlrLbbEMju41d78WXHMfegn7SiwOAnkRtyoHHbqFhVXTQHFjh/?= =?us-ascii?Q?MxiwxGgm/N/epsDBwxiRVL8gwwoWcFcFY86iw5/RZIP?= X-Microsoft-Exchange-Diagnostics-untrusted: 1;BY1PR03MB1516;5:vtGrugq5mrPw1uG4RnfL84cABeCwcp1OanGyE49ueTVJdGXbDrdgWTOOJMAM3v/bUh1L+GjFoBK82wI9s9CckvpRC0zArx/duS3OXkGkCVhXuFSNXck8aeRw2ukSlGa9mE263npPPlVIfafYEEXYmA==;24:CzIIGQzve5XjNGQxsGqfCYtDZsOqx/YfKA+d6KH1c6uHoU77K4C6pbkyEelidKAUzuTpk973zIUf37b5v12oPCz1xpoLyZqZmEsr6nZaWdI=;20:9hERtZ20S8FxjRNlmNlRIU20KnIX06NyQhRvTBcG5UyouWdlQHcmMsTFR+ddHEunPof+5CMh8XBUGIgLVUrxun/WqQWgPNf4TsRDD0N3RGBQ44Hzz+EEr+MvUsnGL1PdL+FVLUk4r/colSltbXS+5ODPPWkxwNzZIALuLm5XS7c= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB1516 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: BY2FFO11FD041.protection.gbl X-Microsoft-Exchange-Diagnostics: 1;BY2FFO11FD041;1:/xgb2rAbf1p76i5QhpJUCaEulT+aC2p5NJnLhl11wj3wp9i0k8/xf21lMGnPpq2WUIlcgsvP/9OaTSE0NrlOG26LC3VZSos//3eriH8Td+3hjRPJAmAz9mrMK0bceG/xncQR7edOsmLyKwxhpUZTa6oAv+E0xAqU8Kw6rV1vMyrIYYEwWAWZ1XvCSzp01diuEWN4z5AHlKftcgLZI0DijnJCrEn6MnaF701hZdOseVkU7p3RY9ZJvA4yu8vqkuO6id79pnRMchq7Ky8s4By3RvX3Gj5KpEPTUPD61Ed9ochutb28yNNlqFIp02Z2LYld1mUCrJ6iIcHoOorOnWaV+9IePe/ynnxTvVDk2KkJERQ9cre8Cf3vHn7bNGyCO7OEO42yWuIqSxxmm0tj4BDvFQ== X-Forefront-Antispam-Report: CIP:66.35.236.227;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(1109001)(1110001)(339900001)(189002)(51914003)(199003)(24454002)(189998001)(5007970100001)(5001830100001)(53416004)(6070500001)(5004730100002)(16796002)(5001860100001)(50466002)(6806005)(46406003)(93886004)(110136002)(107886002)(5001960100002)(46102003)(97736004)(106466001)(81156007)(4001540100001)(4001350100001)(105606002)(83506001)(86152002)(33716001)(68736005)(2950100001)(40100003)(47776003)(86362001)(77096005)(11100500001)(85426001)(77156002)(92566002)(66066001)(122386002)(21840400001)(87936001)(76176999)(62966003)(50986999)(64706001)(54356999)(23726002)(7099028)(7059030)(4001430100001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR03MB1504;H:sj-itexedge03.altera.priv.altera.com;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;MX:1;A:0;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1504;2:KrDBA5S/5hLLlOX7FSreLkEy3vssWadka95nQ8YHy9hbewNBMBQj9QoMquvJD4K77vsHDktm+CoZVrsSsCsKMPTCZVGTN+eQvXJEBdqwM+NFi1ecc5Edj2T5uZELOj5V+5fXw1ZHKCTortFUsbLmnt7cmEEQRKBDvjnueWWuy4A=;3:u5K/kaAldGeqaq8yIVQxVCfSejOH5Uq9wTEkA7RrUthckdGcQ/3tm6oNLJmNbiJ0SdcqlMBXiryrIkwudgRqT61NyrAt71DfnTyDNXvpwBrueihsUdrK8nDymIJzgfPHPAUEgpxtqd9mvVq9W0UM9W7eY4rFa89Qs1ic+2f+I8abdBFY79jOONkLlp0WZQ7T2s8Trp3+uEavI4bSUhFAyVb7uIQHjNO8mi6mhC9RkQI=;25:CC6oLyPaH5uJJFsDQU4UkqCCHwtDroSltLTqGQVa6wwLv8r6XdSIyhszZjl0ml7+1N6eiXen6PRi/zOdDo3t4jmabqo+mUojizb2jpEtXO3hhAXDScca+yLtQlw40JhZTZbh0GdYU/2j+zw1/y/xUPP8M4rjmdUT8T5FyUoqdMdcR7LIgk67X+xsUWRHegFMZg3nKmj4ddlB8GHlQTsxRJJEiy/Cy8IrxBgqHX0U5n00mLZraYsi/gqW0HfvwUJQ+uNCpr770EguvBly0iC0kQ==;20:fxDPFlYF5t3eFamJmH4GFsSdJ84jP0siTp8Hbev+ZPa9uQF7kGCUbeTzJqFpq56jGUnatYRpvXv2MS1NWrtNVK/uniBPu/v5oNoz/ah1/pPVRW3JF81b7P1HUqu9Uf0WNjLFSymwhLmKwjHXiSauRKiZnMteQ6z04HKQNXd9os8= X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1504;4:wOS8PMoWwgd1CUSLbwKuIbm+yHw+c1SF5UYlisF58P1QYGcwszeeXEXaIBpl7Ao7vpkR/nf3AuefCuufxSj4NcfRYxU78s7WKIUe+SHkyA+4wE3MicowXCHxj9CixSR2m9jymOmVvXPl/YGY1OSN7BHeK7OAeRy+6I5cPp2gkJGXvIof2LcOSO0VSrIVuOBoBOfDlWId91m/o1k9LP9C4iUp8GvWHecf5famLrEzi4yTeIpHMGSl9IDQfn0qQfElZGlkYM6dfMaF8qIGJHZnbU2kamBuoBJZRpuuHHL6jlwu2Pg9FG88JRFGrmigLl4sUdMI6jq6R9Bj8ZfCK9jLI47K6c23jNFdvGdnDqJiscQ= X-Forefront-PRVS: 070912876F X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CY1PR03MB1504;23:er3qE9PDtzqNATpX9gtrPkqPWt7TL+dvFScbpMVVK?= =?us-ascii?Q?TA8tR23kpwqLA+Mwn/I9D7FxTfpGQDKgl5wHsRt9Wqgt4FVna7oZouWP0rs9?= =?us-ascii?Q?QysECFEaiRsXZ5ibDOTbP6Vat10ihO+f9agTJSCJjuVJOACKPuh3KvBC6u7e?= =?us-ascii?Q?Q4NOO08o0BuIUfmNq1ySSy+aY2qbJbFinAd/CMrJuLLaA2NQWIIdy+7PrlZL?= =?us-ascii?Q?IqJsqVlX7zEoR5/tQKe7T/vaqdUtIM2eekkK/gb1YjZDII9j4NaNfSU8Ad7c?= =?us-ascii?Q?/umMpoH0qKkRVSUgDLvuEm+ceC4yxzJKYJfI2rcERjdXcg4rOuAVoQrFbDSl?= =?us-ascii?Q?3HIi+CDmSin5B5v17PqLGjInOnIlXA00Pti16rt5m4TF0FAKzpi6I2NDos7k?= =?us-ascii?Q?urPCpWgZnobJ28pl3HCaSt4axmzcDag/DYL2mkfYxH84oQIwU6NQRK2JYZui?= =?us-ascii?Q?V+ytJgE/xhYPb7MB1gLHbVbtpha87kDE8DYX5q4isgshnM48O0gqoW+vg1Vx?= =?us-ascii?Q?8EzI6ObIwGIl9RH1d94/FA48+g5Eyp6emb30ycB1E7QgLDB9D7LUxZDSTqNr?= =?us-ascii?Q?/WPWWtNVnhilLIQb7EkdC6XDB2OSowoaNW5+PogR4qgSePFbUuIZ5rKMTRGy?= =?us-ascii?Q?nz/8PHNo2HWqJABa+zSOuuI38wGO2xDghxb5B1+3wb+nZWWFXVB+CSmg919Z?= =?us-ascii?Q?xUIocWB7JK+1oSzn76oaZXI41G1i/ezmuayG8HIZzEKBYbknrylgtW02ttsW?= =?us-ascii?Q?GD9eLlx82F0jKPOma6+y+5YbvVqWcJiQarMY9/OFxShuiBHJj1fhaF7PbZvb?= =?us-ascii?Q?+yrOMIo1/WTATs+91WBLDohQXjSTjnZAJ9xeuh/tnvH2rB6HwvdIwbvgilLw?= =?us-ascii?Q?RKsKMfRIh8CiL3S9c8w1dary274gnvld+/9IOVSLwLB8iZW48FVsxqE7/iAl?= =?us-ascii?Q?FbjJZ4Tbgg9MdbYvW2fuvAu/BA+/xp38rUK4Fal4SOlDN3xYrb4ahbbbWILu?= =?us-ascii?Q?HJaKJne6EYtGBpGRC8LMXj6I7CWV1cekLpErrHwz1TH61f4DjJOf1Kz8WuLG?= =?us-ascii?Q?Q95Wvg1EjNTvUzqVubsSlGrk3d8YZRyYmUoT2z2CwCwjBmwubyU8TvRdCY0k?= =?us-ascii?Q?NSPmUwbMbME2nV9rFTuPNDO+hay/IXenhLHTnUTIU7Lav0Ajcv+X+fSrtOxt?= =?us-ascii?Q?diFtcLfJNB0/2woNLVeWjALTS/8UrHEAmHa4wJjZiM6GErceHX/5X/HRWB2r?= =?us-ascii?Q?xpTc0bYeT4xlMVtiYlsqPOGXVSMvJD+0ieLYABafEwBnm5h+RBXxNRtwd3AH?= =?us-ascii?Q?SlCwLknroIUeCew7s05PPBTSDtesctU3IpT18UftQcknsEkRK8gvQE3HEjqY?= =?us-ascii?Q?7tnazegqEp81KD4dfK01cG/Z8cWZlBN+QDhtN/7vcvdwucdzdVizlM9/R4+j?= =?us-ascii?Q?GgNgntIVVD9rvDrK5Uf3T+ydYb3Ue95YGzTtaa6xeuxn8QHpy2nU2DbnRC5j?= =?us-ascii?Q?O5tblgeR49CyA=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR03MB1504;5:pvNfcjCP1vUZBL6WCVDXEhipw6ZJTbcsUAOBPZjx73EVDjPz4ZIQX5t4/BFSerjkp5PQZtm812mnCXmJMY5um1M6Uf/GIJaittPogiopNnrqITTb5bjgO2HsZGi9oQT10J/zgiDki0v9plKksT/ScQ==;24:E7taWzdmDxhyp0xsarFoQ2cRr+ykyi4Dy63REhmOLonPtVHCfM6gGtqLIeBzsaiYetLhhL05XQjCUDc/CQUOgZOkPXPE4lDM6gtkv50YqHc=;20:p2q8LoWl4yiwNE4Tt725jNKApuX1idZSz5AXtS3pxVb4vMVx4A816uySLxFlis0E4RK9mIoigYbUnJPX2gbBozb9UWOHDCZgv6WrGU/0j85+r92HNo18IdVH+p50zWyAX75cKy22RgghgcjlcHf+xIUbRyl2xT+zL3Aw02QI+jM= X-OriginatorOrg: opensource.altera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Sep 2015 20:31:06.6533 (UTC) X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fbd72e03-d4a5-4110-adce-614d51f2077a;Ip=[66.35.236.227];Helo=[sj-itexedge03.altera.priv.altera.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB1504 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 23 Sep 2015, Josh Cartwright wrote: > On Wed, Sep 23, 2015 at 12:10:13PM -0500, atull wrote: > > On Tue, 22 Sep 2015, Josh Cartwright wrote: > [..] > > > > +struct fpga_manager *of_fpga_mgr_get(struct device_node *node) > > > > +{ > > > > + struct fpga_manager *mgr; > > > > + struct device *dev; > > > > + > > > > + if (!node) > > > > + return ERR_PTR(-EINVAL); > > > > + > > > > + dev = class_find_device(fpga_mgr_class, NULL, node, > > > > + fpga_mgr_of_node_match); > > > > + if (!dev) > > > > + return ERR_PTR(-ENODEV); > > > > + > > > > + mgr = to_fpga_manager(dev); > > > > + put_device(dev); > > > > > > Who's ensuring the FPGA manager device's lifetime between _get and _put? > > > > Well... get_device and put_device are not sufficient? > > Sorry if I was too opaque. > > You've just put_device()'d the only reference to the device you had > here, so nothing is preventing from the device from being ripped away > while it's being used. > > You should remove the put_device() call here, and add a corresponding > put_device() in fpga_mgr_put(). > > The module refcounting is also a bit strange, as you are > acquiring/releasing a reference to THIS_MODULE, but you also should care > about the lower-level driver's module refcount. > Good call. Thanks for the clarification. I'll have something more robust in v12. > [..] > > > > + dt_label = of_get_property(mgr->dev.of_node, "label", NULL); > > > > + if (dt_label) > > > > + ret = dev_set_name(&mgr->dev, "%s", dt_label); > > > > + else > > > > + ret = dev_set_name(&mgr->dev, "fpga%d", id); > > > > > > I'm wondering if an alias {} node is better for this. > > > > I could look into that. Is there an example of that you particularly > > like for this? > > Look at i2c's usage of the of_alias_*() functions. OK yes, will use that in the next version. Thanks for the review, Alan > > Josh >