Not All Symbols Present in a Loadable Kernel Module
Alexander Sack
pisymbol at gmail.com
Tue May 6 14:47:54 UTC 2008
On Tue, May 6, 2008 at 3:28 AM, Bruce Evans <brde at optusnet.com.au> wrote:
> On Mon, 5 May 2008, Alexander Sack wrote:
> > For my own edification, unless you specifically mark a function
> > inline, will gcc really optimize them out? That seems a little
> > overboard unless there is some compiler option that says its okay to
> > do that. I guess that would be very easy to test if you do as you
> > say, just sock away the function address pointer somewhere and you
> > should be okay...
> >
>
> This is a regression in gcc-4. The -O option says it. -O implies
> -funit-at-a-time, which allows inlining of functions irrespective of
> their order within a file and implies -finline-functions-called-once.
> Thus even plain -O removes most static functions that are only called
> once.
Thanks Bruce, I did some digging and all i can say is YIKES. Got to
be careful with gcc optimizations. I suppose to be safe, bge could be
compiled with -fno-inline-funcations-called-once to be safe.
> This doesn't seem to be the problem with the bce functions, since some
> of the missing ones are called more than once.
Again, I would assume if you look at the symbols of the generated
binary you should be able to figure out if you have a compiler issue
or a debugger one!
-aps
More information about the freebsd-net
mailing list