Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 9 Jul 2010 17:38:15 +0000 (UTC)
From:      Xin LI <delphij@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r209860 - head/sys/dev/twa
Message-ID:  <201007091738.o69HcFDA002936@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: delphij
Date: Fri Jul  9 17:38:15 2010
New Revision: 209860
URL: http://svn.freebsd.org/changeset/base/209860

Log:
  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
  MFC after:		3 days

Modified:
  head/sys/dev/twa/tw_cl.h
  head/sys/dev/twa/tw_cl_share.h

Modified: head/sys/dev/twa/tw_cl.h
==============================================================================
--- head/sys/dev/twa/tw_cl.h	Fri Jul  9 17:11:29 2010	(r209859)
+++ head/sys/dev/twa/tw_cl.h	Fri Jul  9 17:38:15 2010	(r209860)
@@ -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: head/sys/dev/twa/tw_cl_share.h
==============================================================================
--- head/sys/dev/twa/tw_cl_share.h	Fri Jul  9 17:11:29 2010	(r209859)
+++ head/sys/dev/twa/tw_cl_share.h	Fri Jul  9 17:38:15 2010	(r209860)
@@ -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;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201007091738.o69HcFDA002936>