Skip to content

Commit

Permalink
mm: do not export ioremap_page_range symbol for external module
Browse files Browse the repository at this point in the history
Recently, I've found cases in which ioremap_page_range was used
incorrectly, in external modules, leading to crashes.  This can be
partly attributed to the fact that ioremap_page_range is lower-level,
with fewer protections, as compared to the other functions that an
external module would typically call.  Those include:

     ioremap_cache
     ioremap_nocache
     ioremap_prot
     ioremap_uc
     ioremap_wc
     ioremap_wt

...each of which wraps __ioremap_caller, which in turn provides a safer
way to achieve the mapping.

Therefore, stop EXPORT-ing ioremap_page_range.

Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: zhong jiang <[email protected]>
Reviewed-by: John Hubbard <[email protected]>
Suggested-by: John Hubbard <[email protected]>
Acked-by: Michal Hocko <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
xiongzhongjiang authored and torvalds committed Jan 25, 2017
1 parent 3705ccf commit 3277953
Showing 1 changed file with 0 additions and 1 deletion.
1 change: 0 additions & 1 deletion lib/ioremap.c
Original file line number Diff line number Diff line change
Expand Up @@ -144,4 +144,3 @@ int ioremap_page_range(unsigned long addr,

return err;
}
EXPORT_SYMBOL_GPL(ioremap_page_range);

0 comments on commit 3277953

Please sign in to comment.