2005-02-17 21:13:14

by linux-os (Dick Johnson)

[permalink] [raw]
Subject: "Needlessly global functions static...."


Hello,
Tell me. When all those kernel functions are made static
how does one use a kernel debugger? How does the OOPS
get decoded if nothing is in /proc/kallsyms or System.map???

Cheers,
Dick Johnson
Penguin : Linux version 2.6.10 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.


2005-02-17 21:24:04

by Roland Dreier

[permalink] [raw]
Subject: Re: "Needlessly global functions static...."

linux-os> Hello, Tell me. When all those kernel functions are made
linux-os> static how does one use a kernel debugger? How does the
linux-os> OOPS get decoded if nothing is in /proc/kallsyms or
linux-os> System.map???

Dude, static symbols are still in System.map and /proc/kallsyms.

2005-02-17 21:25:15

by Chris Wright

[permalink] [raw]
Subject: Re: "Needlessly global functions static...."

* linux-os ([email protected]) wrote:
>
> Hello,
> Tell me. When all those kernel functions are made static
> how does one use a kernel debugger? How does the OOPS
> get decoded if nothing is in /proc/kallsyms or System.map???

static != inline. Locally scoped symbols, 't', and global, 'T',
are in kallsyms or System.map.

thanks,
-chris
--
Linux Security Modules http://lsm.immunix.org http://lsm.bkbits.net

2005-02-17 22:03:25

by Arnd Bergmann

[permalink] [raw]
Subject: Re: "Needlessly global functions static...."

On Dunnersdag 17 Februar 2005 22:25, Chris Wright wrote:

> static != inline. ?Locally scoped symbols, 't', ?and global, 'T',
> are in kallsyms or System.map.

Well, actually they might get inlined automatically when building with
gcc -funit-at-a-time. That is of course a desired side effect of making
symbols local, although it can be confusing when you're looking at the
assembler output.

Arnd <><



Attachments:
(No filename) (406.00 B)
(No filename) (189.00 B)
signature
Download all attachments