Bug 70481 - Symbol version mismatches with CONFIG_MODVERSIONS
Summary: Symbol version mismatches with CONFIG_MODVERSIONS
Status: NEW
Alias: None
Product: Other
Classification: Unclassified
Component: Modules (show other bugs)
Hardware: i386 Linux
: P1 high
Assignee: other_modules
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-02-13 09:39 UTC by Thomas Bächler
Modified: 2014-02-17 12:39 UTC (History)
1 user (show)

See Also:
Kernel Version: 3.13
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Thomas Bächler 2014-02-13 09:39:00 UTC
I posted this problem on the LKML with relevant CC's, but no reply from anyone responsible: https://lkml.org/lkml/2014/1/26/22

The problem is as follows:

Following commit 83460ec8dcac14142e7860a01fa59c267ac4657c in the Linus tree, some symbols fail to generate a CRC when CONFIG_MODVERSIONS is enabled. This causes the CRC to be 0x00000000. This happens on both i686 and x86_64.

While that should not be fatal, it causes more problems on i686: Modules depending on those symbols fail to load, for example:

ext4: disagrees about version of symbol d_tmpfile
ext4: Unknown symbol d_tmpfile (err -22)
ext4: disagrees about version of symbol iov_shorten
ext4: Unknown symbol iov_shorten (err -22)
ext4: disagrees about version of symbol in_group_p
ext4: Unknown symbol in_group_p (err -22)
ext4: disagrees about version of symbol do_sync_read
ext4: Unknown symbol do_sync_read (err -22)
ext4: disagrees about version of symbol current_fs_time
ext4: Unknown symbol current_fs_time (err -22)
ext4: disagrees about version of symbol generic_write_sync
ext4: Unknown symbol generic_write_sync (err -22)
ext4: disagrees about version of symbol generic_getxattr
ext4: Unknown symbol generic_getxattr (err -22)

So, there are two problems here: 1) some symbols fail to generate valid CRCs, 2) if a symbol's CRC is 0x0 on i686, then a symbol mismatch occurs at runtime.
Comment 1 Alan 2014-02-17 12:06:46 UTC
Can you attach the .config file that triggers this case ?
Comment 2 Thomas Bächler 2014-02-17 12:39:33 UTC
This is the config that produced the failure for me:

https://projects.archlinux.org/svntogit/packages.git/tree/trunk/config?h=packages/linux&id=8a6aafdf6b2627653369ee450f07afabbc123b0b

Note You need to log in before you can comment on or make changes to this bug.