Re: Getting list of exported symbols for $ARCH

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

 



Hi...

On Jan 25, 2008 9:27 AM, Joseph Fannin <jfannin@xxxxxxxxx> wrote:
> Hi!
>
> Is there are simple way to get a list of the exported symbols
> (i.e. with EXPORT_SYMBOL) for a particular kernel arch, preferably
> without building a kernel for that arch?

The best I can think is by doing:
# grep EXPORT_SYMBOL -I -r -n /usr/src/linux

substitute /usr/src/linux with the path of your extracted kernel source.

> I'd like to find a definitive way to see if a symbol is exported or
> not for a particular architechture -- without a full suite of cross
> compilers.
basically, anything...AFAIK, which isn't declared "static" can be
accessed from the modules

> One more thing -- consider you have:
>
> static inline void copy_page(void *to, void *from)
> {
>         copy_4K_page(to, from);
> }
>
> ... and copy_4K_page is exported, but copy_page is not.  Is it
> possible that gcc would optimize copy_page() away, so that modules
> referencing copy_page would end up getting (the exported) copy_4k_page
> and would work?
Hm, I don't think so. Symbol value (in other word, its address in
.text section) is just one... so if it's inlined, then there is no
specific place to call/jump.

You said your module will call copy_page? IMHO that wouldn't possible,
because its symbol wouldn't be resolvable by the kernel module
loader...well, unless you know ELF linking trick that I don't know. I
am ready for further lessons here...

regards,

Mulyadi.

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux