Re: (hacky) [PATCH] silence MODPOST section mismatch warnings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Sam,

On 5/11/07, Sam Ravnborg <[email protected]> wrote:
On Thu, May 10, 2007 at 09:54:27PM +0100, Russell King wrote:
> On Thu, May 10, 2007 at 01:51:47PM -0700, David Miller wrote:
> > From: Chris Wedgwood <[email protected]>
> > Date: Thu, 10 May 2007 13:34:18 -0700
> >
> > > MODPOST seems to be spewing bogus warnings.  It's not clear how best
> > > to fix it so perhaps we should silence it for now?
> >
> > Most of them are legitimate, the only one that needs sorting
> > is the mm/slab.c case and people are working on that.
> >
> > The rest are useful and I've been working to fix things up
> > on sparc64 and the networking, and in fact I'm very happy
> > about these notifications.
> >
> > Please don't apply a sledgehammer to this issue, thanks.
>
> I've not had one accurate one on ARM yet.
You had one patch from me in latest submission to linus that
was a clear bug.

>
> Here's another example:
>
> WARNING: init/built-in.o - Section mismatch: reference to .init.text:
>  from .text between 'rest_init' (at offset 0x4c) and 'run_init_process'
>
> from init/main.c:
>
> static void noinline rest_init(void)
>         __releases(kernel_lock)
>
> static void run_init_process(char *init_filename)
>
> Clearly, it just does _not_ work.
As I have already explained to you this is a binutils issue
that causes this false positive.

The plan is to annotate functions that are not __init that
they intentional reference a function or data in a init section.
I just not there yet.

The thought makes me *extremely* uncomfortable. Better to _heed_
warnings, than _hide_ them, isn't it -- they only tell us what the
code says, after all. Personally, I'd much rather see a few warnings
on my screen (which I _know_ are false positives) than hide a genuine
potential issue only to crash later.

For bogus warnings caused by binutils issues, the solution clearly
lies in fixing _binutils_.

For the "genuine false positives" (where we *do* call .init.text from
.text, but somehow ensure that it doesn't happen after boot) -- I
don't really know, but a solution that solves the (kmem_cache_create
-> setup_cpu_cache + g_cpucache_up -> set_up_list3s) problem in
_logic_ sounds more elegant to me, than inventing something like
__nowarn_calls_init (?). The problem with stuff of the latter sort is
that they often tend to be abused later by everyone even where they
are avoidable / inapplicable, which opens up a can of worms.

Just my 2 paise,
Satyam
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux