From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.kernel.org ([198.145.29.99]:39376 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731215AbfIEKlz (ORCPT ); Thu, 5 Sep 2019 06:41:55 -0400 Date: Thu, 5 Sep 2019 12:41:47 +0200 From: Jessica Yu Subject: Re: [usb-storage] Re: [PATCH v4 12/12] RFC: watchdog: export core symbols in WATCHDOG_CORE namespace Message-ID: <20190905104147.GA27788@linux-8ccs> References: <20180716122125.175792-1-maco@android.com> <20190903150638.242049-1-maennich@google.com> <20190903150638.242049-13-maennich@google.com> <20190903161045.GA22754@roeck-us.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: Sender: linux-kbuild-owner@vger.kernel.org List-ID: To: Matthew Dharm Cc: Guenter Roeck , Masahiro Yamada , Matthias Maennich , Linux Kernel Mailing List , "Cc: Android Kernel" , Arnd Bergmann , Greg Kroah-Hartman , "Joel Fernandes (Google)" , Lucas De Marchi , maco@android.com, sspatil@google.com, Will Deacon , Linux Kbuild mailing list , linux-modules@vger.kernel.org, linux-usb , USB Mass Storage on Linux , linux-watchdog@vger.kernel.org +++ Matthew Dharm [04/09/19 09:16 -0700]: >On Wed, Sep 4, 2019 at 5:12 AM Guenter Roeck wrote: >> >> Note that I don't object to the patch set in general. There may be symbols >> which only need be exported in the context of a single subsystem or even >> driver (if a driver consists of more than one module). For example, a mfd >> driver may export symbols which should only be called by its client drivers. >> In such a situation, it may well be beneficial to limit the use of exported >> symbols. > >I can appreciate this benefit. > >> I am not sure what good that does in practice (if I understand correctly, >> a driver only has to declare that it wants to use a restricted use symbol >> if it wants to use it), but that is a different question. > >I think this question implies that you are coming from the perspective >of "security" or wanting to restrict access to the underlying >functions, rather than wanting to clean-up the way symbols are handled >for manageability / maintainability purposes (which is the goal, as I >understand it). > >HOWEVER, I have one question: If these patches are included, and >someone wants to introduce a bit of code which needs to use two >symbols from different namespaces but with the same name, can that be >done? That is, if driver A has symbol 'foo' and driver B has symbol >'foo' (both in their respective namespaces), and driver C wants to use >A.foo and B.foo, can that be supported? As of now, we currently don't support this - modpost will warn if a symbol is exported more than once (across modules + vmlinux), and the module loader currently assumes exported symbol names are unique. Do you have a concrete use case? If there is a strong need for this, I don't think it'd be too hard to implement. Thanks, Jessica