Re: Dumping the checksums in a module

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

 



Jan Engelhardt wrote:

On May 18 2007 17:02, John Sigler wrote:
I'm getting "disagrees about version of symbol struct_module" messages,
and I'm trying to understand why.

As far as I understand (which is not very far), if I define
CONFIG_MODVERSIONS, then checksums for various functions (all exported
functions?) and various structures (which ones?) will be included inside
the kernel image, and written to Module.symvers. When an out-of-tree
module is built, it will also include these checksums.

How do I list the checksums within a module?

Is there a simpler way to list all the checksums?

22:25 ichi:~ > modinfo aes
srcversion:     8CB82B3A254D5A950FD0D14

I think this one checksum is computed out of all functions that
the module uses.

You've enabled MODULE_SRCVERSION_ALL which adds a checksum computed from the source files used to build a given module. What I want is to list ALL the checksums of the symbols included inside a given module.

e.g. for the kernel:

$ head Module.symvers
0x4da3749b      firmware_unregister     vmlinux EXPORT_SYMBOL_GPL
0xbf9d1364      generic_file_splice_write       vmlinux EXPORT_SYMBOL
0x436417ac      set_anon_super  vmlinux EXPORT_SYMBOL
0x894bc434      kmem_cache_alloc        vmlinux EXPORT_SYMBOL
0x1120b731      request_firmware        vmlinux EXPORT_SYMBOL
0x0a2487e0      unblock_all_signals     vmlinux EXPORT_SYMBOL
0x07d50a24      csum_partial    vmlinux EXPORT_SYMBOL
0xcd6c78f9      __generic_unplug_device vmlinux EXPORT_SYMBOL
0x59ab4080      cap_bset        vmlinux EXPORT_SYMBOL
0xee413334      softirq_preemption      vmlinux EXPORT_SYMBOL
[...]


config MODVERSIONS
bool "Module versioning support"
depends on MODULES
help
  Usually, you have to use modules compiled with your kernel.
  Saying Y here makes it sometimes possible to use modules
  compiled for different kernels, by adding enough information
  to the modules to (hopefully) spot any changes which would
  make them incompatible with the kernel you are running.  If
  unsure, say N.

config MODULE_SRCVERSION_ALL
bool "Source checksum for all modules"
depends on MODULES
help
  Modules which contain a MODULE_VERSION get an extra "srcversion"
  field inserted into their modinfo section, which contains a
  sum of the source files which made it.  This helps maintainers
  see exactly which source was used to build a module (since
  others sometimes change the module source without updating
  the version).  With this option, such a "srcversion" field
  will be created for all modules.  If unsure, say N.

Regards.
-
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