Re: [PATCH v2] mm: make apply_to_page_range more robust

From: David Rientjes
Date: Wed Jan 20 2016 - 18:37:40 EST


On Wed, 20 Jan 2016, Mika Penttilà wrote:

> Recent changes (4.4.0+) in module loader triggered oops on ARM.
>
> can be 0 triggering the bug BUG_ON(addr >= end);.
>
> The call path is SyS_init_module()->set_memory_xx()->apply_to_page_range(),
> and apply_to_page_range gets zero length resulting in triggering :
>
> BUG_ON(addr >= end)
>
> This is a consequence of changes in module section handling (Rusty CC:ed).
> This may be triggable only with certain modules and/or gcc versions.
>

Well, what module are you loading to cause this crash? Why would it be
passing size == 0 to apply_to_page_range()? Again, that sounds like a
problem that we _want_ to know about since it is probably the result of
buggy code and this patch would be covering it up.

Please elaborate on the problem that you are seeing, preferably with a
stack trace of the BUG so we can fix the problem instead of papering over
it.