[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