From owner-svn-src-projects@FreeBSD.ORG Fri Dec 2 20:28:46 2011 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4492F1065670; Fri, 2 Dec 2011 20:28:46 +0000 (UTC) (envelope-from ambrisko@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 34D7B8FC12; Fri, 2 Dec 2011 20:28:46 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id pB2KSkrw007749; Fri, 2 Dec 2011 20:28:46 GMT (envelope-from ambrisko@svn.freebsd.org) Received: (from ambrisko@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id pB2KSkMG007747; Fri, 2 Dec 2011 20:28:46 GMT (envelope-from ambrisko@svn.freebsd.org) Message-Id: <201112022028.pB2KSkMG007747@svn.freebsd.org> From: Doug Ambrisko Date: Fri, 2 Dec 2011 20:28:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r228208 - projects/head_mfi/sys/dev/mfi X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Dec 2011 20:28:46 -0000 Author: ambrisko Date: Fri Dec 2 20:28:45 2011 New Revision: 228208 URL: http://svn.freebsd.org/changeset/base/228208 Log: Fix botched merge of Skinny support and enhanced handling in the call back routine. Modified: projects/head_mfi/sys/dev/mfi/mfi.c Modified: projects/head_mfi/sys/dev/mfi/mfi.c ============================================================================== --- projects/head_mfi/sys/dev/mfi/mfi.c Fri Dec 2 19:59:46 2011 (r228207) +++ projects/head_mfi/sys/dev/mfi/mfi.c Fri Dec 2 20:28:45 2011 (r228208) @@ -2135,8 +2135,7 @@ mfi_data_cb(void *arg, bus_dma_segment_t union mfi_sgl *sgl; struct mfi_softc *sc; int i, j, first, dir; - int sgl_mapped = 0; - int sge_size = 0; + int sge_size; cm = (struct mfi_command *)arg; sc = cm->cm_sc; @@ -2165,8 +2164,8 @@ mfi_data_cb(void *arg, bus_dma_segment_t sgl->sg_skinny[i].flag = 0; } hdr->flags |= MFI_FRAME_IEEE_SGL | MFI_FRAME_SGL64; - sgl_mapped = 1; sge_size = sizeof(struct mfi_sg_skinny); + hdr->sg_count = nsegs; } else { j = 0; if (cm->cm_frame->header.cmd == MFI_CMD_STP) { @@ -2195,8 +2194,8 @@ mfi_data_cb(void *arg, bus_dma_segment_t hdr->flags |= MFI_FRAME_SGL64; } hdr->sg_count = j; + sge_size = sc->mfi_sge_size; } - hdr->sg_count = nsegs; dir = 0; if (cm->cm_flags & MFI_CMD_DATAIN) { @@ -2216,7 +2215,7 @@ mfi_data_cb(void *arg, bus_dma_segment_t * least 1 frame, so don't compensate for the modulo of the * following division. */ - cm->cm_total_frame_size += (sge_size * nsegs); + cm->cm_total_frame_size += (sc->mfi_sge_size * nsegs); cm->cm_extra_frames = (cm->cm_total_frame_size - 1) / MFI_FRAME_SIZE; if(sc->MFA_enabled)