Subject: Re: [PATCH] mm-move-mremap-from-file_operations-to-vm_operations_struct-fix

From: Austin S Hemmelgarn <[email-masked]>
Date: Fri, 17 Jul 2015 14:39:14 -0400

On 2015-07-17 14:19, Oleg Nesterov wrote:
> On 07/17, Austin S Hemmelgarn wrote:
>>
>> On 2015-07-17 13:55, Oleg Nesterov wrote:
>>> On 07/17, Benjamin LaHaise wrote:
>>>>
>>>> Don't add BUG().  It's the equivalent approach of saying "I think this code
>>>> isn't needed, but I'm lazy and not going to remove it properly."
>>>
>>> There is another interpretation: I think this code must be never called,
>>> if it is actually called we have a serious problem which should be loudly
>>> reported.
>>>
>> And not compiling it at all _will_ loudly report it, it'll just report
>> it during linking instead of at run-time, which is a much better time to
>> shout about it.
>
> And how can we do this?
>
If a function that isn't defined (for example, you use a #if block to 
comment it out under certain circumstances), then the link will fail 
rather noisily something references it.  We already know during the 
compile that it's a NOMMU kernel, so anything that calls it on a MMU 
enabled kernel can have a compile time check added instead of doing the 
check at runtime (or even just calling it without checking), thus even 
further reducing code size.