Re: [PATCH v4 2/5] lib: devres: add pcim_iomap_wc() variants
From: Luis R. Rodriguez <hidden>
Date: 2015-05-01 00:20:13
Also in:
linux-pci, lkml, xen-devel
On Thu, Apr 30, 2015 at 04:46:38PM -0500, Bjorn Helgaas wrote:
On Thu, Apr 30, 2015 at 07:27:23PM +0200, Luis R. Rodriguez wrote:quoted
On Thu, Apr 30, 2015 at 11:26:47AM -0500, Bjorn Helgaas wrote:quoted
quoted
I don't see users of either pcim_iomap_wc() or pcim_iomap_wc_regions() so far. Did I miss them, or do you just expect them in the near future?The later, and also I hate seeing folks later add code under EXPORT_SYMBOL() rather than EXPORT_SYMBOL_GPL() so I figure I'd rather do it first. It happened recently in my v1 series, someone beat me to a write-combining export symbol and changed it to EXPORT_SYMBOL(). Feel free to drop this though but I hope no one out there then tries to just add an EXPORT_SYMBOL() later for this...Why do you want them to be EXPORT_SYMBOL_GPL? I would expect them to be exported the same way pcim_iomap(), pcim_iomap_regions(), and ioremap_wc() are exported, i.e., with EXPORT_SYMBOL.quoted
Per Documentation/DocBook/kernel-hacking.tmpl, EXPORT_SYMBOL_GPL "implies that the function is considered an internal implementation issue, and not really an interface." I don't think these are internal implementation issues.
What Documentation/DocBook/kernel-hacking.tmpl states over EXPORT_SYMBOL_GPL() is old and in no way reflects current trends and reality. For instance, some folks believe that if some code has EXPORT_SYMBOL() declared that they can use it on proprietary modules. This is terribly incorrect, quite a few developers do not in any way stand by this as a "needed" clarification on their code [0]. I'm one of them, but to be even more clear on this I simply *always* use EXPORT_SYMBOL_GPL() to remove any possible doubt over this on any symbols that I export. Heck, even tons of driver library code uses EXPORT_SYMBOL_GPL(). [0] https://lkml.org/lkml/2012/4/20/402 Luis