svn commit: r307507 - head/sys/cam/scsi

Alexander Motin mav at FreeBSD.org
Mon Oct 17 08:35:58 UTC 2016


Author: mav
Date: Mon Oct 17 08:35:56 2016
New Revision: 307507
URL: https://svnweb.freebsd.org/changeset/base/307507

Log:
  Consider device as clean even if SYNCHRONIZE CACHE failed.
  
  If device reservation was preempted by other initiator, our sync request
  will always fail.  Without this change CAM tried to sync cache on every
  following device close, including numerous GEOM tasting opens/closes,
  causing lots of useless noise in logs.
  
  While there, increase SYNCHRONIZE CACHE timeout to default value.
  
  MFC after:	2 weeks

Modified:
  head/sys/cam/scsi/scsi_da.c

Modified: head/sys/cam/scsi/scsi_da.c
==============================================================================
--- head/sys/cam/scsi/scsi_da.c	Mon Oct 17 08:29:16 2016	(r307506)
+++ head/sys/cam/scsi/scsi_da.c	Mon Oct 17 08:35:56 2016	(r307507)
@@ -1488,12 +1488,11 @@ daclose(struct disk *dp)
 			scsi_synchronize_cache(&ccb->csio, /*retries*/1,
 			    /*cbfcnp*/dadone, MSG_SIMPLE_Q_TAG,
 			    /*begin_lba*/0, /*lb_count*/0, SSD_FULL_SIZE,
-			    5 * 60 * 1000);
+			    da_default_timeout * 1000);
 			error = cam_periph_runccb(ccb, daerror, /*cam_flags*/0,
 			    /*sense_flags*/SF_RETRY_UA | SF_QUIET_IR,
 			    softc->disk->d_devstat);
-			if (error == 0)
-				softc->flags &= ~DA_FLAG_DIRTY;
+			softc->flags &= ~DA_FLAG_DIRTY;
 			xpt_release_ccb(ccb);
 		}
 


More information about the svn-src-head mailing list