Author: mav
Date: Mon Sep 14 15:15:32 2015
New Revision: 287783
URL: https://svnweb.freebsd.org/changeset/base/287783

Log:
  Implement data/status aggregation for camsim backend.
  
  This is almost pointless for primary HA node, but useful for secondary,
  where between fe_datamove and fe_done calls goes another link roundtrip.

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

Modified: head/sys/cam/ctl/ctl_frontend_cam_sim.c
==============================================================================
--- head/sys/cam/ctl/ctl_frontend_cam_sim.c     Mon Sep 14 14:42:06 2015        
(r287782)
+++ head/sys/cam/ctl/ctl_frontend_cam_sim.c     Mon Sep 14 15:15:32 2015        
(r287783)
@@ -435,6 +435,13 @@ cfcs_datamove(union ctl_io *io)
 
        io->scsiio.ext_data_filled += len_copied;
 
+       if ((io->io_hdr.status & CTL_STATUS_MASK) == CTL_SUCCESS) {
+               io->io_hdr.ctl_private[CTL_PRIV_FRONTEND].ptr = NULL;
+               io->io_hdr.flags |= CTL_FLAG_STATUS_SENT;
+               ccb->ccb_h.status = CAM_REQ_CMP;
+               xpt_done(ccb);
+       }
+
        io->scsiio.be_move_done(io);
 }
 
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to