Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 Jan 2012 23:37:17 +0000 (UTC)
From:      Jim Harris <jimharris@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r230792 - user/jimharris/isci/sys/dev/isci/scil
Message-ID:  <201201302337.q0UNbHll007718@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jimharris
Date: Mon Jan 30 23:37:17 2012
New Revision: 230792
URL: http://svn.freebsd.org/changeset/base/230792

Log:
  Fix ATAPI code path to ensure bus_dma_segment structures are only used
  within bus_dmamap_load context.
  
  Sponsored by: Intel
  Reported by: Sohaib Ahsan <sohaib dot ahsan intel com>

Modified:
  user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_packet_request.c
  user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_request.c

Modified: user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_packet_request.c
==============================================================================
--- user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_packet_request.c	Mon Jan 30 23:07:27 2012	(r230791)
+++ user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_packet_request.c	Mon Jan 30 23:37:17 2012	(r230792)
@@ -192,8 +192,8 @@ void scu_stp_packet_request_command_phas
       task_context->transfer_length_bytes =
          scic_cb_io_request_get_transfer_length(this_request->user_request);
 
-      // setup sgl
-      scic_sds_request_build_sgl(this_request);
+      // sgls were already built when request was constructed, so don't need to
+      //  to do it here
    }
    else
    {

Modified: user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_request.c
==============================================================================
--- user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_request.c	Mon Jan 30 23:07:27 2012	(r230791)
+++ user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_request.c	Mon Jan 30 23:37:17 2012	(r230792)
@@ -585,6 +585,8 @@ SCI_STATUS scic_sds_io_request_construct
    case SAT_PROTOCOL_PACKET_PIO_DATA_IN:
    case SAT_PROTOCOL_PACKET_PIO_DATA_OUT:
       status = scic_sds_stp_packet_request_construct(this_request);
+      if (do_translate_sgl == TRUE)
+         scic_sds_request_build_sgl(this_request);
    break;
 #endif
 



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