From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S936818AbdCXQp6 (ORCPT ); Fri, 24 Mar 2017 12:45:58 -0400 Received: from mailout2.samsung.com ([203.254.224.25]:60851 "EHLO mailout2.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751818AbdCXQps (ORCPT ); Fri, 24 Mar 2017 12:45:48 -0400 X-AuditID: b6c32a36-f79c56d000001a35-e5-58d54d384536 From: Bartlomiej Zolnierkiewicz To: Krzysztof Kozlowski Cc: linux-arm-kernel@lists.infradead.org, Kukjin Kim , Javier Martinez Canillas , Matt Mackall , Herbert Xu , "David S. Miller" , linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-crypto@vger.kernel.org, Olof Johansson , Arnd Bergmann , Marek Szyprowski Subject: Re: [PATCH 1/3] crypto: hw_random - Add new Exynos RNG driver Date: Fri, 24 Mar 2017 17:45:41 +0100 Message-id: <87677624.EBdhaJY1KM@amdc3058> User-Agent: KMail/4.13.3 (Linux/3.13.0-96-generic; KDE/4.13.3; x86_64; ; ) In-reply-to: <20170324161934.kc6g36nazr3y32kp@kozik-lap> MIME-version: 1.0 Content-transfer-encoding: 7Bit Content-type: text/plain; charset=us-ascii X-Brightmail-Tracker: H4sIAAAAAAAAA02SWUhUYRTH+e6de+c6OnUdt5OaxpSCkuaGXLKkoOUmBj0OPZhT3lRynXGt KJNcC7coQyVNXHKwlHFQM1FzV8pJGnNLrXxSU0gxd8uZO4Jvv8P5nXP4f3wULhkgbKnwqDhO ESWPkJIiQWOXi5sbc3VE5lGocWB2CnqFTIn2sYB5Mm/P/F6sxZjc2QWc0WrrhYx69hvBzExv YMzXlhKSealtw5i33VNCpqwxBzGDoyvkOTG7tVmAWE3NOMY2djixalUWyTZUPGR1/akEq8md ErI5GhVic+bqEbuidrgmui46E8JFhCdwilP+waKw7bFSQczE4aTBtXUsBZWbZSMTCmgfWG5J wXm2hi/TdWQ2ElESuhlBuu6RscjAoGmyi9yfaC3KEvKNagTjo8UCvlhF8Gl0Q6C3SPo05Geo kJ4taRcY3Vkj9BJO9+CQWTtskCzoSzC09UuoZwHtBO0vqgwspl2h+8+WYdiKDgBNWwamZxOa gd3SJqNjDuvPpg17cNoR2tqfEzyfhM+975D+GNAbQthe6dwbpvaKo6DuMAa9ACtLk4hnC5jv 0wh5tgPV7gTGcyGCpi3g9zQgUH3IM0p+0NU3bDx2CJZWnxL8fjFkpkt4hYWOlimjfh5KK8oJ /oV0CBrf1GB5yLHoQIaiAxmKDmQoQ7gKWXMxyshQTukZ4+WulEcq46NC3W9FR6qR4YO5+jaj 8qHATkRTSGom7l/QySSEPEGZHNmJgMKlluKffiMyiThEnnyXU0TfUMRHcMpOZEcJpDZiwiNf JqFD5XHcHY6L4RT7XYwysU1Bx3dzfmwG+YbfNO+oTk69KFJoXQIvT47UpU3Nqv5tentVBc08 wIK4Spu1fp/u4BPZr5Jo03yrYpO+wyi2+khQ93Ce7vVfS4+02/7Lpu9rljfvZQ9VxdUl2ZKV /mHeV1Iz78eSzmOEzHst4pi3vef3sYFE1ibx41ndXEBPq/NifrVUoAyTe7riCqX8P2PLyodc AwAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrNIsWRmVeSWpSXmKPExsVy+t9jAV0L36sRBv2z2Cz+TjrGbjHnfAuL RfcrGYs3b9cwWfQ/fs1scf78BnaLTY+vsVrcv/eTyeLyrjlsFjPO72OyWHvkLrvFgm19jBan rn9mc+D1+P1rEqPHlpU3mTy2HVD12LSqk81j85J6jysnmlg9tvTfZffo27KK0aPv5QZGj8+b 5AK4otxsMlITU1KLFFLzkvNTMvPSbZVCQ9x0LZQU8hJzU22VInR9Q4KUFMoSc0qBPCMDNODg HOAerKRvl+CW8efGfJaCW/wVp77/YGpgXMTTxcjJISFgIrFnVic7hC0mceHeerYuRi4OIYGl jBLLdh1ghnC+MkrM27+MEaSKTcBKYmL7KjBbREBT4vrf76wgRcwCR5kltq7bAJYQFnCTOPf7 EdhYFgFVif3TloHZvAJaEkc+/garERXwktiyr50JxOYUsJD4N387O8S2BkaJf79mMEI0CEr8 mHyPBcRmFpCX2Ld/KiuErSWxfudxpgmMArOQlM1CUjYLSdkCRuZVjBKpBckFxUnpuYZ5qeV6 xYm5xaV56XrJ+bmbGMER/UxqB+PBXe6HGAU4GJV4eE+8vhIhxJpYVlyZe4hRgoNZSYT3ofXV CCHelMTKqtSi/Pii0pzU4kOMpkAfTmSWEk3OByabvJJ4QxNzE3NjAwtzS0sTIyVx3sbZz8KF BNITS1KzU1MLUotg+pg4OKUaGNUe6TXuyeibveN26Llf37Z7evbJ1olWr95ZWu5ibL5yW3+U wWPhD9eKD2xY9eXKmS2zWlVka5imvFusOml7Skbah+zW6A2nHxk9O83WcELl6NV952bcXPD+ sqRSr3mZS9ajOadtrnZtjr26y/n0KneH671HJqa2qWVe/1Xm4uD5oETOwDG34Y0SS3FGoqEW c1FxIgBZIbw2/gIAAA== X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170324164544epcas1p353b2eba5ecb6d5f7a69049c5ba9d667e X-Msg-Generator: CA X-Sender-IP: 203.254.230.26 X-Local-Sender: =?UTF-8?B?QmFydGxvbWllaiBab2xuaWVya2lld2ljehtTUlBPTC1LZXJu?= =?UTF-8?B?ZWwgKFRQKRvsgrzshLHsoITsnpAbU2VuaW9yIFNvZnR3YXJlIEVuZ2luZWVy?= X-Global-Sender: =?UTF-8?B?QmFydGxvbWllaiBab2xuaWVya2lld2ljehtTUlBPTC1LZXJu?= =?UTF-8?B?ZWwgKFRQKRtTYW1zdW5nIEVsZWN0cm9uaWNzG1NlbmlvciBTb2Z0d2FyZSBF?= =?UTF-8?B?bmdpbmVlcg==?= X-Sender-Code: =?UTF-8?B?QzEwG0VIURtDMTBDRDAyQ0QwMjczOTI=?= CMS-TYPE: 101P X-HopCount: 7 X-CMS-RootMailID: 20170324164544epcas1p353b2eba5ecb6d5f7a69049c5ba9d667e X-RootMTR: 20170324164544epcas1p353b2eba5ecb6d5f7a69049c5ba9d667e References: <20170324142446.31129-1-krzk@kernel.org> <9265537.P6AeF50kg8@amdc3058> <20170324161934.kc6g36nazr3y32kp@kozik-lap> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Friday, March 24, 2017 07:19:34 PM Krzysztof Kozlowski wrote: > On Fri, Mar 24, 2017 at 05:11:25PM +0100, Bartlomiej Zolnierkiewicz wrote: > > On Friday, March 24, 2017 06:46:00 PM Krzysztof Kozlowski wrote: > > > I really do not like global or file-scope variables. I do not like > > > drivers using them. Actually I hate them. > > > > > > From time to time I encounter a driver which was designed with that > > > approach - static fields and hidden assumption that there will be only > > > one instance. Usually that assumption is really hidden... > > > > > > ... and then it happens that I want to use two instances which of course > > > fails. > > > > > > This code serves as a clear documentation for this assumption - only one > > > instance is allowed. You can look at it as a self-documenting > > > requirement. > > > > For me it looks as needless case of defensive programming and when > > I see the code like this it always raises questions about the real > > intentions of the code. I find it puzzling and not helpful. > > I do not understand what might be puzzling about check for static > file-scope value. It is of course subjective, but for me that looks > pretty self-explanatory. The check should never happen given that ->probe will not happen twice. However it seems that this is possible now with DT platform devices and incorrect DTB. > > > And I think the probe might be called twice, for example in case of > > > mistake in DTB. > > > > Even if this is possible resource allocation code in the driver will > > take take care of handling it just fine, > > Indeed, the devm_ioremap_resource() solves the case. I can drop the > check then. Looking on this a bit more it seems that devm_ioremap_resource() will not cover all mistakes (using compatible by mistake in some other DTB node). Leave the check, I take my objection back. Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics