Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 12 May 2012 03:30:51 +0000 (UTC)
From:      Sean Bruno <sbruno@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r235318 - head/sys/dev/mfi
Message-ID:  <201205120330.q4C3Upoh013611@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sbruno
Date: Sat May 12 03:30:50 2012
New Revision: 235318
URL: http://svn.freebsd.org/changeset/base/235318

Log:
  Fix inappropriate data type for two bus_dmamap_t variables that were causing
  PAE to insta-panic on startup.  Remove one unused variable that was
  commented out.
  
  Reviewed by:	ambrisko@
  Obtained from:	jhb@ peter@ bz@ and countless others during BSDCAN
  MFC after:	3 days

Modified:
  head/sys/dev/mfi/mfi_cam.c
  head/sys/dev/mfi/mfivar.h

Modified: head/sys/dev/mfi/mfi_cam.c
==============================================================================
--- head/sys/dev/mfi/mfi_cam.c	Sat May 12 03:25:46 2012	(r235317)
+++ head/sys/dev/mfi/mfi_cam.c	Sat May 12 03:30:50 2012	(r235318)
@@ -293,8 +293,8 @@ mfip_start(void *data)
 	pt->header.data_len = csio->dxfer_len;
 	pt->header.sense_len = MFI_SENSE_LEN;
 	pt->header.cdb_len = csio->cdb_len;
-	pt->sense_addr_lo = cm->cm_sense_busaddr;
-	pt->sense_addr_hi = 0;
+	pt->sense_addr_lo = (uint32_t)cm->cm_sense_busaddr;
+	pt->sense_addr_hi = (uint32_t)((uint64_t)cm->cm_sense_busaddr >> 32);
 	if (ccbh->flags & CAM_CDB_POINTER)
 		bcopy(csio->cdb_io.cdb_ptr, &pt->cdb[0], csio->cdb_len);
 	else

Modified: head/sys/dev/mfi/mfivar.h
==============================================================================
--- head/sys/dev/mfi/mfivar.h	Sat May 12 03:25:46 2012	(r235317)
+++ head/sys/dev/mfi/mfivar.h	Sat May 12 03:30:50 2012	(r235318)
@@ -176,7 +176,7 @@ struct mfi_softc {
 	// Start: LSIP200113393
 	bus_dma_tag_t			verbuf_h_dmat;
 	bus_dmamap_t			verbuf_h_dmamap;
-	uint32_t			verbuf_h_busaddr;
+	bus_dmamap_t			verbuf_h_busaddr;
 	uint32_t			*verbuf;
 	void				*kbuff_arr[MAX_IOCTL_SGE];
 	bus_dma_tag_t			mfi_kbuff_arr_dmat[2];
@@ -232,7 +232,7 @@ struct mfi_softc {
 
 	bus_dma_tag_t			mfi_sense_dmat;
 	bus_dmamap_t			mfi_sense_dmamap;
-	uint32_t			mfi_sense_busaddr;
+	bus_dmamap_t			mfi_sense_busaddr;
 	struct mfi_sense		*mfi_sense;
 
 	struct resource			*mfi_irq;
@@ -319,7 +319,6 @@ struct mfi_softc {
 	uint8_t	*			request_message_pool;
 	uint8_t *			request_message_pool_align;
 	uint8_t *			request_desc_pool;
-	//uint32_t			request_desc_busaddr;
 	bus_addr_t			request_msg_busaddr;
 	bus_addr_t			reply_frame_busaddr;
 	bus_addr_t			sg_frame_busaddr;



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