[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201308271923.FCG13057.QLVHOFFSMtJOFO@I-love.SAKURA.ne.jp>
Date: Tue, 27 Aug 2013 19:23:51 +0900
From: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
To: ak@...ux.intel.com, viro@...IV.linux.org.uk, geert@...ux-m68k.org,
akpm@...ux-foundation.org
Cc: dhowells@...hat.com, rusty@...tcorp.com.au,
linux-kernel@...r.kernel.org
Subject: Re: [linux-next-20130822] module: broken module versions?
I noticed that symbols which cause "disagrees about version of symbol" messages
have crc == 0.
---------- scripts/mod/modpost.c ----------
/* CRC'd symbol */
if (strncmp(symname, CRC_PFX, strlen(CRC_PFX)) == 0) {
crc = (unsigned int) sym->st_value;
+ if (!crc)
+ fprintf(stderr, "symbol %s has crc=0 sym->st_shndx=%d\n",
+ symname, sym->st_shndx);
sym_update_crc(symname + strlen(CRC_PFX), mod, crc,
export);
}
---------- scripts/mod/modpost.c ----------
I got below messages upon build.
symbol __crc_sys_close has crc=0 sym->st_shndx=0
symbol __crc_path_is_under has crc=0 sym->st_shndx=0
symbol __crc_task_nice has crc=0 sym->st_shndx=0
symbol __crc_vfs_fsync_range has crc=0 sym->st_shndx=0
symbol __crc___symbol_put has crc=0 sym->st_shndx=0
symbol __crc_iov_shorten has crc=0 sym->st_shndx=0
symbol __crc_inode_add_bytes has crc=0 sym->st_shndx=0
symbol __crc_sock_register has crc=0 sym->st_shndx=0
symbol __crc_vm_brk has crc=0 sym->st_shndx=0
symbol __crc_kern_mount_data has crc=0 sym->st_shndx=0
symbol __crc_schedule_timeout has crc=0 sym->st_shndx=0
symbol __crc_generic_getxattr has crc=0 sym->st_shndx=0
symbol __crc_in_group_p has crc=0 sym->st_shndx=0
symbol __crc_finish_open has crc=0 sym->st_shndx=0
symbol __crc_get_unmapped_area has crc=0 sym->st_shndx=0
symbol __crc_generic_write_sync has crc=0 sym->st_shndx=0
symbol __crc_filp_close has crc=0 sym->st_shndx=0
symbol __crc_d_tmpfile has crc=0 sym->st_shndx=0
symbol __crc_iterate_fd has crc=0 sym->st_shndx=0
symbol __crc_register_exec_domain has crc=0 sym->st_shndx=0
symbol __crc_ns_capable has crc=0 sym->st_shndx=0
symbol __crc___page_file_mapping has crc=0 sym->st_shndx=0
symbol __crc_mnt_set_expiry has crc=0 sym->st_shndx=0
symbol __crc_do_sync_read has crc=0 sym->st_shndx=0
symbol __crc_vfs_test_lock has crc=0 sym->st_shndx=0
symbol __crc_perf_event_create_kernel_counter has crc=0 sym->st_shndx=0
symbol __crc_current_fs_time has crc=0 sym->st_shndx=0
symbol __crc_softirq_work_list has crc=0 sym->st_shndx=0
symbol __crc_sys_close has crc=0 sym->st_shndx=0
symbol __crc_path_is_under has crc=0 sym->st_shndx=0
symbol __crc_task_nice has crc=0 sym->st_shndx=0
symbol __crc_vfs_fsync_range has crc=0 sym->st_shndx=0
symbol __crc___symbol_put has crc=0 sym->st_shndx=0
symbol __crc_iov_shorten has crc=0 sym->st_shndx=0
symbol __crc_inode_add_bytes has crc=0 sym->st_shndx=0
symbol __crc_sock_register has crc=0 sym->st_shndx=0
symbol __crc_vm_brk has crc=0 sym->st_shndx=0
symbol __crc_kern_mount_data has crc=0 sym->st_shndx=0
symbol __crc_schedule_timeout has crc=0 sym->st_shndx=0
symbol __crc_generic_getxattr has crc=0 sym->st_shndx=0
symbol __crc_in_group_p has crc=0 sym->st_shndx=0
symbol __crc_finish_open has crc=0 sym->st_shndx=0
symbol __crc_get_unmapped_area has crc=0 sym->st_shndx=0
symbol __crc_generic_write_sync has crc=0 sym->st_shndx=0
symbol __crc_filp_close has crc=0 sym->st_shndx=0
symbol __crc_d_tmpfile has crc=0 sym->st_shndx=0
symbol __crc_iterate_fd has crc=0 sym->st_shndx=0
symbol __crc_register_exec_domain has crc=0 sym->st_shndx=0
symbol __crc_ns_capable has crc=0 sym->st_shndx=0
symbol __crc___page_file_mapping has crc=0 sym->st_shndx=0
symbol __crc_mnt_set_expiry has crc=0 sym->st_shndx=0
symbol __crc_do_sync_read has crc=0 sym->st_shndx=0
symbol __crc_vfs_test_lock has crc=0 sym->st_shndx=0
symbol __crc_perf_event_create_kernel_counter has crc=0 sym->st_shndx=0
symbol __crc_current_fs_time has crc=0 sym->st_shndx=0
symbol __crc_softirq_work_list has crc=0 sym->st_shndx=0
I continued bisection in this way and found that commit 5c019369 "syscalls.h:
use gcc alias instead of assembler aliases for syscalls" started showing
below messages upon build.
WARNING: "ns_capable" [net/ipv6/sit.ko] has no CRC!
WARNING: "ns_capable" [net/ipv6/ipv6.ko] has no CRC!
WARNING: "sock_register" [net/ipv6/ipv6.ko] has no CRC!
WARNING: "ns_capable" [net/ipv4/ip_tunnel.ko] has no CRC!
WARNING: "inode_add_bytes" [fs/udf/udf.ko] has no CRC!
WARNING: "current_fs_time" [fs/udf/udf.ko] has no CRC!
WARNING: "do_sync_read" [fs/udf/udf.ko] has no CRC!
WARNING: "d_tmpfile" [fs/udf/udf.ko] has no CRC!
WARNING: "sys_close" [fs/binfmt_misc.ko] has no CRC!
WARNING: "current_fs_time" [fs/binfmt_misc.ko] has no CRC!
WARNING: "vm_brk" [fs/binfmt_aout.ko] has no CRC!
WARNING: "sys_close" [fs/autofs4/autofs4.ko] has no CRC!
WARNING: "schedule_timeout" [drivers/hid/usbhid/usbhid.ko] has no CRC!
Reverting commit 5c019369 from linux-next-20130822 solved this problem.
Andi, would you check?
Regards.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists