Author: jimharris
Date: Fri Aug 24 22:04:16 2012
New Revision: 239665
URL: http://svn.freebsd.org/changeset/base/239665

Log:
  Clear freeze bit before calling xpt_release_devq.
  
  This ensures that any ccbs which immediately start during the call to
  xpt_release_devq see an accurate picture of the frozen_lun_mask.
  
  Sponsored by: Intel
  MFC after:    3 days

Modified:
  head/sys/dev/isci/isci_remote_device.c

Modified: head/sys/dev/isci/isci_remote_device.c
==============================================================================
--- head/sys/dev/isci/isci_remote_device.c      Fri Aug 24 21:45:52 2012        
(r239664)
+++ head/sys/dev/isci/isci_remote_device.c      Fri Aug 24 22:04:16 2012        
(r239665)
@@ -278,12 +278,12 @@ isci_remote_device_release_lun_queue(str
        if (remote_device->frozen_lun_mask & (1 << lun)) {
                struct cam_path *path;
 
+               remote_device->frozen_lun_mask &= ~(1 << lun);
                xpt_create_path(&path, xpt_periph,
                    cam_sim_path(remote_device->domain->controller->sim),
                    remote_device->index, lun);
                xpt_release_devq(path, 1, TRUE);
                xpt_free_path(path);
-               remote_device->frozen_lun_mask &= ~(1 << lun);
        }
 }
 
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to