当前位置: 技术问答>linux和unix
内核编译后重启Volume group "VolGroup00" not found
来源: 互联网 发布时间:2016-08-20
本文导语: 虚拟机上编译内核 完了重启新内核时的错误 网上看到的解决方法如下: 解决方法: Edit /usr/src/linux/drivers/message/fusion/mptbase.c to match the following --- drivers/message/fusion/mptbase.orig.c 2007-07-20 18:47:21.000000000 +0000 +++...
虚拟机上编译内核
完了重启新内核时的错误
网上看到的解决方法如下:
解决方法:
Edit /usr/src/linux/drivers/message/fusion/mptbase.c to match the following
--- drivers/message/fusion/mptbase.orig.c 2007-07-20 18:47:21.000000000 +0000
+++ drivers/message/fusion/mptbase.c 2007-07-20 11:23:32.000000000 +0000
@@ -2564,6 +2564,10 @@
pfacts->IOCStatus = le16_to_cpu(pfacts->IOCStatus);
pfacts->IOCLogInfo = le32_to_cpu(pfacts->IOCLogInfo);
pfacts->MaxDevices = le16_to_cpu(pfacts->MaxDevices);
+ /* Fix VMware bug */
+ if(pfacts->MaxDevices == 0) {
+ pfacts->MaxDevices = 16;
+ }
pfacts->PortSCSIID = le16_to_cpu(pfacts->PortSCSIID);
pfacts->ProtocolFlags = le16_to_cpu(pfacts->ProtocolFlags);
pfacts->MaxPostedCmdBuffers = le16_to_cpu(pfacts->MaxPostedCmdBuffers);
这是VMware的模拟lsi的一个bug.
重新编译即可
另一方法
内核2.6.21使用Fusion MPT 3.04.04有问题,使用3.04.03,如下(至少LSI53C1030可以正常加载)
这个方法在改函数的时候到底要怎么改,我加了下面这些
/* Fix VMware bug */
if(pfacts->MaxDevices == 0) {
pfacts->MaxDevices = 16;
}
重新编译错误依旧,
上面给的方法中
--- drivers/message/fusion/mptbase.orig.c 2007-07-20 18:47:21.000000000 +0000
+++ drivers/message/fusion/mptbase.c 2007-07-20 11:23:32.000000000 +0000
@@ -2564,6 +2564,10 @@
是什么意思
完了重启新内核时的错误
网上看到的解决方法如下:
解决方法:
Edit /usr/src/linux/drivers/message/fusion/mptbase.c to match the following
--- drivers/message/fusion/mptbase.orig.c 2007-07-20 18:47:21.000000000 +0000
+++ drivers/message/fusion/mptbase.c 2007-07-20 11:23:32.000000000 +0000
@@ -2564,6 +2564,10 @@
pfacts->IOCStatus = le16_to_cpu(pfacts->IOCStatus);
pfacts->IOCLogInfo = le32_to_cpu(pfacts->IOCLogInfo);
pfacts->MaxDevices = le16_to_cpu(pfacts->MaxDevices);
+ /* Fix VMware bug */
+ if(pfacts->MaxDevices == 0) {
+ pfacts->MaxDevices = 16;
+ }
pfacts->PortSCSIID = le16_to_cpu(pfacts->PortSCSIID);
pfacts->ProtocolFlags = le16_to_cpu(pfacts->ProtocolFlags);
pfacts->MaxPostedCmdBuffers = le16_to_cpu(pfacts->MaxPostedCmdBuffers);
这是VMware的模拟lsi的一个bug.
重新编译即可
另一方法
内核2.6.21使用Fusion MPT 3.04.04有问题,使用3.04.03,如下(至少LSI53C1030可以正常加载)
这个方法在改函数的时候到底要怎么改,我加了下面这些
/* Fix VMware bug */
if(pfacts->MaxDevices == 0) {
pfacts->MaxDevices = 16;
}
重新编译错误依旧,
上面给的方法中
--- drivers/message/fusion/mptbase.orig.c 2007-07-20 18:47:21.000000000 +0000
+++ drivers/message/fusion/mptbase.c 2007-07-20 11:23:32.000000000 +0000
@@ -2564,6 +2564,10 @@
是什么意思
|
编译的时候没有选择硬盘的驱动,就是虚拟硬盘的驱动。需要选择上。
|
哦,换个虚拟机试试。。
呵呵……
呵呵……
|
我的也错