[ofw] FW: [PATCH]: ALL: Reducing Prefast false alarms

Tzachi Dar tzachid at mellanox.co.il
Mon Jul 21 07:37:59 PDT 2008


 

________________________________

From: Doron Tsur 
Sent: Monday, July 21, 2008 5:32 PM
To: anh.duong at qlogic.com; eleanor.witiak at qlogic.com;
stan.smith at intel.com; Tzachi Dar; Leonid Keller
Cc: Doron Tsur; ofw at lists.openfabrics.org
Subject: [PATCH]: ALL: Reducing Prefast false alarms


I have started to apply Prefast on WinOF code.  
 
Proposed SVN Commit log:
 
------------------------------------------------------------------------
------------------------------------------------------------------------
---------------------------------------------------------- 
 
 
Prefast is a static tool from Microsoft  , designated for driver
developers over Windows platform to help find bugs.
Prefast provides both Microsoft specific issues and general issues (as
NULL pointers). 
 
However,  Prefast often has false alarms  . 
There are ways to remove these false alarms by :
 

1.	When Using ASSERT in a non-memory allocation pointer, Prefast is
not aware of the check ASSERT performs. 
2.	Suppress the Prefast warning if the developer if there is an
issue with no impact (For example, comparing constants in a code
protected by #ifdef _DEBUG_ has no impact on fre built code.

In this patch I remove some of Prefast false alarms :
 
Removing false Prefast alarms by:

1.	
	Adding __analysis_assume() to ASSERT when DBG and _PREFAST_ are
used for use in all the WinOF tree.
	

	1.	/trunk/inc/kernel/complib/cl_types_osd.h 
	2.	/trunk/inc/user/complib/cl_types_osd.h

2.	
	Adding __pragma(warning(suppress:6326)) to suppress constants
compare warning (performance decrease is acceptable since this is chked
code/ heavy windows event logging:

	1.	Adding __pragma(warning(suppress:6326)) in debug MACROs:


		1.	/trunk/core/al/al_debug.h 
		2.	/trunk/inc/complib/cl_debug.h 
		3.	
			/trunk/ulp/ipoib/kernel/ipoib_debug.h

	2.	Adding __pragma(warning(suppress:6326)) in Events
logging: 

		1.	/trunk/hw/mthca/kernel/hca_debug.h

------------------------------------------------------------------------
------------------------------------------------------------------------
----------------------------------------------------------
 
 
Tests (On WinOF tree):
 

1.	Build for chk, fre, x86 and AMD64 for 2003 and 2008 servers (8
builds). (After SVN update, and on  WinOF tree )  ,  using 6001.18001
DDK.   
2.	Run 6001.18001 DDK Prefast

 
Tested SVN Version of WinOF:
1425 
 
Modified files: 
/trunk/core/al/al_debug.h
/trunk/hw/mthca/kernel/hca_debug.h
/trunk/inc/complib/cl_debug.h
/trunk/inc/kernel/complib/cl_types_osd.h
/trunk/inc/user/complib/cl_types_osd.h
/trunk/ulp/ipoib/kernel/ipoib_debug.h
 
Diff:
 
See attached file of unified diff.
 
Doron Tsur  < doront at mellanox.co.il <mailto:doront at mellanox.co.il>  > 
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20080721/52cb6a41/attachment.html>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Reducing_Prefast_false alarms.diff.txt
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20080721/52cb6a41/attachment.txt>


More information about the ofw mailing list