Bug 70481

Summary: Symbol version mismatches with CONFIG_MODVERSIONS
Product: Other Reporter: Thomas Bächler (thomas)
Component: ModulesAssignee: other_modules
Status: NEW ---    
Severity: high CC: alan
Priority: P1    
Hardware: i386   
OS: Linux   
Kernel Version: 3.13 Subsystem:
Regression: No Bisected commit-id:

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