Author: ken
Date: Tue Apr  2 17:29:17 2013
New Revision: 249028
URL: http://svnweb.freebsd.org/changeset/base/249028

Log:
  Fix sending virtual scatter/gather lists from the CTL CAM frontend
  peripheral.
  
  Sponsored by: Spectra Logic

Modified:
  head/sys/cam/ctl/scsi_ctl.c

Modified: head/sys/cam/ctl/scsi_ctl.c
==============================================================================
--- head/sys/cam/ctl/scsi_ctl.c Tue Apr  2 17:11:07 2013        (r249027)
+++ head/sys/cam/ctl/scsi_ctl.c Tue Apr  2 17:29:17 2013        (r249028)
@@ -916,7 +916,7 @@ ctlfestart(struct cam_periph *periph, un
                                if (io->io_hdr.flags & CTL_FLAG_BUS_ADDR)
                                        flags |= CAM_DATA_SG_PADDR;
                                else
-                                       flags &= ~CAM_DATA_SG;
+                                       flags |= CAM_DATA_SG;
                                data_ptr = (uint8_t *)cam_sglist;
                                dxfer_len = io->scsiio.kern_data_len;
                        } else {
@@ -938,6 +938,10 @@ ctlfestart(struct cam_periph *periph, un
                                data_ptr = sglist[*ti].addr;
                                dxfer_len = sglist[*ti].len;
                                csio->sglist_cnt = 0;
+                               if (io->io_hdr.flags & CTL_FLAG_BUS_ADDR)
+                                       flags |= CAM_DATA_PADDR;
+                               else
+                                       flags |= CAM_DATA_VADDR;
                                cmd_info->flags |= CTLFE_CMD_PIECEWISE;
                                (*ti)++;
                        }
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to