suse11的系统,虚拟机上,加载raid456模块
提示
[17897.668185] raid456: Unknown symbol async_gen_syndrome (err 0)
[17897.668422] raid456: Unknown symbol async_raid6_2data_recov (err 0)
[17897.668512] raid456: Unknown symbol async_syndrome_val (err 0)
[17897.668587] raid456: Unknown symbol async_raid6_datap_recov (err 0)
好吧,缺了async_tx相关内容。那就先加载async_tx呗
加载到async_tx的时候,提示
[17711.239266] async_pq: Unknown symbol raid6_gfexp (err 0)
[17711.239266] async_pq: Unknown symbol raid6_call (err 0)
[17711.239266] async_pq: Unknown symbol raid6_empty_zero_page (err 0)
见鬼了,查看代码似乎是一个互相依赖问题啊,怎么可能发行版中存在这种奇怪的问题??
搜了半天没有解决方法,尝试modprobe,见鬼提示:
modprobe async_pq.ko
FATAL: Module async_pq.ko not found.
modprobe raid456.ko
FATAL: Module raid456.ko not found.
也是很奇怪,加上了绝对路径还是不行。
折腾了半天,突然发现网上有例子,用modprobe加载模块的时候,不要带.ko,直接用模块名字,我擦,这个设计太二了!!
好吧,用 modprobe raid456,加载成功了,看了一下
lsmod | grep raid
raid456 77872 0
async_raid6_recov 17189 1 raid456
async_pq 13295 2 raid456,async_raid6_recov
raid6_pq 88307 2 async_raid6_recov,async_pq
raid10 34778 0
raid0 17172 0
raid1 31078 0
async_xor 13082 3 raid456,async_raid6_recov,async_pq
async_memcpy 12650 2 raid456,async_raid6_recov
async_tx 13470 5 raid456,async_raid6_recov,async_pq,async_xor,async_memcpy
各种依赖模块,自动加载成功了。该死的命令行参数啊……