svn commit: r198394 - head/sys/cam
Alexander Motin
mav at FreeBSD.org
Fri Oct 23 13:39:31 UTC 2009
Author: mav
Date: Fri Oct 23 13:39:30 2009
New Revision: 198394
URL: http://svn.freebsd.org/changeset/base/198394
Log:
Make "Retrying Command" to be printed before actual retrying.
It should make debug/error log a bit more readable.
Modified:
head/sys/cam/cam_periph.c
Modified: head/sys/cam/cam_periph.c
==============================================================================
--- head/sys/cam/cam_periph.c Fri Oct 23 13:35:00 2009 (r198393)
+++ head/sys/cam/cam_periph.c Fri Oct 23 13:39:30 2009 (r198394)
@@ -1767,16 +1767,27 @@ cam_periph_error(union ccb *ccb, cam_fla
break;
}
+ /*
+ * If we have and error and are booting verbosely, whine
+ * *unless* this was a non-retryable selection timeout.
+ */
+ if (error != 0 && bootverbose &&
+ !(status == CAM_SEL_TIMEOUT && (camflags & CAM_RETRY_SELTO) == 0)) {
+ if (error != ERESTART) {
+ if (action_string == NULL)
+ action_string = "Unretryable Error";
+ xpt_print(ccb->ccb_h.path, "error %d\n", error);
+ xpt_print(ccb->ccb_h.path, "%s\n", action_string);
+ } else
+ xpt_print(ccb->ccb_h.path, "Retrying Command\n");
+ }
+
/* Attempt a retry */
- if (error == ERESTART || error == 0) {
+ if (error == ERESTART || error == 0) {
if (frozen != 0)
ccb->ccb_h.status &= ~CAM_DEV_QFRZN;
-
- if (error == ERESTART) {
- action_string = "Retrying Command";
+ if (error == ERESTART)
xpt_action(ccb);
- }
-
if (frozen != 0)
cam_release_devq(ccb->ccb_h.path,
relsim_flags,
@@ -1785,21 +1796,5 @@ cam_periph_error(union ccb *ccb, cam_fla
/*getcount_only*/0);
}
- /*
- * If we have and error and are booting verbosely, whine
- * *unless* this was a non-retryable selection timeout.
- */
- if (error != 0 && bootverbose &&
- !(status == CAM_SEL_TIMEOUT && (camflags & CAM_RETRY_SELTO) == 0)) {
-
-
- if (action_string == NULL)
- action_string = "Unretryable Error";
- if (error != ERESTART) {
- xpt_print(ccb->ccb_h.path, "error %d\n", error);
- }
- xpt_print(ccb->ccb_h.path, "%s\n", action_string);
- }
-
return (error);
}
More information about the svn-src-all
mailing list