svn commit: r209863 - stable/7/sys/dev/twa

Xin LI delphij at FreeBSD.org
Fri Jul 9 20:43:59 UTC 2010


Author: delphij
Date: Fri Jul  9 20:43:57 2010
New Revision: 209863
URL: http://svn.freebsd.org/changeset/base/209863

Log:
  MFC r209860:
  
  Don't use pack() for structures that is used purely for software state.
  Otherwise the resulting, unaligned mutex structure would trigger panic.
  
  Submitted by:		Tom Cough <tom.couch lsi.com>
  Reported/Tested by:	jhb
  PR:			kern/148464

Modified:
  stable/7/sys/dev/twa/tw_cl.h
  stable/7/sys/dev/twa/tw_cl_share.h
Directory Properties:
  stable/7/sys/   (props changed)
  stable/7/sys/cddl/contrib/opensolaris/   (props changed)
  stable/7/sys/contrib/dev/acpica/   (props changed)
  stable/7/sys/contrib/pf/   (props changed)

Modified: stable/7/sys/dev/twa/tw_cl.h
==============================================================================
--- stable/7/sys/dev/twa/tw_cl.h	Fri Jul  9 20:05:56 2010	(r209862)
+++ stable/7/sys/dev/twa/tw_cl.h	Fri Jul  9 20:43:57 2010	(r209863)
@@ -74,7 +74,6 @@
 #define TW_CLI_PCI_CONFIG_STATUS_OFFSET		0x6 /* status register offset */
 #endif /* TW_OSL_PCI_CONFIG_ACCESSIBLE */
 
-#pragma pack(1)
 
 #ifdef TW_OSL_DEBUG
 struct tw_cli_q_stats {
@@ -206,7 +205,6 @@ struct tw_cli_ctlr_context {
 #endif /* TW_OSL_DEBUG */
 };
 
-#pragma pack()
 
 
 /*

Modified: stable/7/sys/dev/twa/tw_cl_share.h
==============================================================================
--- stable/7/sys/dev/twa/tw_cl_share.h	Fri Jul  9 20:05:56 2010	(r209862)
+++ stable/7/sys/dev/twa/tw_cl_share.h	Fri Jul  9 20:43:57 2010	(r209863)
@@ -125,7 +125,6 @@
 #define TW_CL_SEVERITY_DEBUG_STRING	"DEBUG"
 
 
-#pragma pack(1)
 
 /*
  * Structure, a pointer to which is used as the controller handle in
@@ -190,6 +189,7 @@ struct tw_cl_req_packet {
 };
 
 
+#pragma pack(1)
 /*
  * Packet that describes an AEN/error generated by the controller,
  * Common Layer, or even the OS Layer.
@@ -206,6 +206,7 @@ struct tw_cl_event_packet {
 	TW_UINT32	event_src;
 	TW_UINT8	severity_str[20];
 };
+#pragma pack()
 
 
 /* Structure to link 2 adjacent elements in a list. */
@@ -215,6 +216,7 @@ struct tw_cl_link {
 };
 
 
+#pragma pack(1)
 /* Scatter/Gather list entry with 32 bit addresses. */
 struct tw_cl_sg_desc32 {
 	TW_UINT32	address;


More information about the svn-src-all mailing list