[ofw] RE: Patch to support boot disk
Tzachi Dar
tzachid at mellanox.co.il
Tue May 5 04:08:17 PDT 2009
One note to all developers using this drivers.
Working with a boot driver should be fine if the driver is fine.
However, a developer might face the following issues with a bad driver
(for example a driver that crashes on DriverEntry() ):
1) The 2008 machine will not boot if drivers are not signed. (connected
to a kernel debugger or not).
2) kd files will not map our drivers at boot.
3) Bus driver has been started even if we were running in safe mode.
All this problems can be avoided by turning the drivers to demand start
(instead of boot start).
See the attached registry file for an example of how to disable the boot
loading.
Thanks
Tzachi
________________________________
From: Leonid Keller
Sent: Sunday, May 03, 2009 4:08 PM
To: James Yang; Tzachi Dar
Cc: ofw at lists.openfabrics.org
Subject: RE: Patch to support boot disk
Applied in 2146, thank you.
________________________________
From: James Yang [mailto:jyang at xsigo.com]
Sent: Thursday, April 30, 2009 3:18 AM
To: Leonid Keller; Tzachi Dar
Cc: ofw at lists.openfabrics.org
Subject: Patch to support boot disk
Hi,
In order to support boot from IB, we need to make all
the drivers to be boot driver. Also registry "StaticChild" should not be
changed after driver update if it's modified. Please review the patch.
Thanks,
James
Index: hw/mlx4/kernel/hca/mlx4_hca.inx
===================================================================
--- hw/mlx4/kernel/hca/mlx4_hca.inx (revision
2139)
+++ hw/mlx4/kernel/hca/mlx4_hca.inx (working copy)
@@ -246,7 +246,7 @@
[MLX4HCA.ServiceInstall]
DisplayName = %MLX4HCA.ServiceDesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
-StartType = %SERVICE_DEMAND_START%
+StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\mlx4_hca.sys
LoadOrderGroup = extended base
@@ -275,7 +275,7 @@
[Ibbus.ServiceInstall]
DisplayName = %Ibbus.ServiceDesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
-StartType = %SERVICE_DEMAND_START%
+StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\ibbus.sys
LoadOrderGroup = PnP Filter
@@ -292,7 +292,7 @@
HKR,"Parameters","DebugFlags",%REG_DWORD%,0x80000000
HKR,"Parameters","ReportPortNIC",%REG_DWORD%,1
-HKR,"Parameters","StaticChild",%REG_MULTI_SZ%,IPoIB
+HKR,"Parameters","StaticChild",%REG_MULTI_SZ_NO_CLOBBER%,IPoIB
;use the following line to add your device
;HKR,"Parameters","StaticChild",%REG_MULTI_SZ_APPEND%,"XsigoBus"
@@ -315,7 +315,7 @@
[WinVerbs.ServiceInstall]
DisplayName = %WinVerbs.ServiceDesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
-StartType = %SERVICE_DEMAND_START%
+StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\winverbs.sys
LoadOrderGroup = PNP Filter
@@ -328,7 +328,7 @@
[WinMad.ServiceInstall]
DisplayName = %WinMad.ServiceDesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
-StartType = %SERVICE_DEMAND_START%
+StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\winmad.sys
LoadOrderGroup = PNP Filter
@@ -455,6 +455,7 @@
REG_DWORD = 0x00010001
REG_DWORD_NO_CLOBBER = 0x00010003
REG_MULTI_SZ = 0x00010000
+REG_MULTI_SZ_NO_CLOBBER = 0x00010002
REG_MULTI_SZ_APPEND = 0x00010008
DIRID_SYSTEM = 11
DIRID_DRIVERS = 12
Index: hw/mthca/kernel/mthca.inx
===================================================================
--- hw/mthca/kernel/mthca.inx (revision 2139)
+++ hw/mthca/kernel/mthca.inx (working copy)
@@ -256,7 +256,7 @@
[MTHCA.ServiceInstall]
DisplayName = %MTHCA.ServiceDesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
-StartType = %SERVICE_DEMAND_START%
+StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\mthca.sys
LoadOrderGroup = extended base
@@ -289,7 +289,7 @@
[Ibbus.ServiceInstall]
DisplayName = %Ibbus.ServiceDesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
-StartType = %SERVICE_DEMAND_START%
+StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\ibbus.sys
LoadOrderGroup = PnP Filter
@@ -306,7 +306,7 @@
HKR,"Parameters","DebugFlags",%REG_DWORD%,0x80000000
HKR,"Parameters","ReportPortNIC",%REG_DWORD%,1
-HKR,"Parameters","StaticChild",%REG_MULTI_SZ%,IPoIB
+HKR,"Parameters","StaticChild",%REG_MULTI_SZ_NO_CLOBBER%,IPoIB
;use the following line to add your device
;HKR,"Parameters","StaticChild",%REG_MULTI_SZ_APPEND%,"XsigoBus"
@@ -327,7 +327,7 @@
[WinVerbs.ServiceInstall]
DisplayName = %WinVerbs.ServiceDesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
-StartType = %SERVICE_DEMAND_START%
+StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\winverbs.sys
LoadOrderGroup = PNP Filter
@@ -338,7 +338,7 @@
[WinMad.ServiceInstall]
DisplayName = %WinMad.ServiceDesc%
ServiceType = %SERVICE_KERNEL_DRIVER%
-StartType = %SERVICE_DEMAND_START%
+StartType = %SERVICE_BOOT_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\winmad.sys
LoadOrderGroup = PNP Filter
@@ -464,6 +464,7 @@
REG_DWORD = 0x00010001
REG_DWORD_NO_CLOBBER = 0x00010003
REG_MULTI_SZ = 0x00010000
+REG_MULTI_SZ_NO_CLOBBER = 0x00010002
REG_MULTI_SZ_APPEND = 0x00010008
DIRID_SYSTEM = 11
DIRID_DRIVERS = 12
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20090505/cb0fcf7f/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mlx4_start_on_demand.re_
Type: application/octet-stream
Size: 264 bytes
Desc: mlx4_start_on_demand.re_
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20090505/cb0fcf7f/attachment.obj>
More information about the ofw
mailing list