changeset 3750:69ec1179f557

6489875 RQFULL must also consider tick-compare for N2
author rf157361
date Fri, 02 Mar 2007 15:47:51 -0800
parents fa3ac017d2f9
children e324cdb33208
files usr/src/uts/sun4v/os/error.c
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/uts/sun4v/os/error.c	Fri Mar 02 13:05:53 2007 -0800
+++ b/usr/src/uts/sun4v/os/error.c	Fri Mar 02 15:47:51 2007 -0800
@@ -646,7 +646,7 @@
  * If resumable queue is full, we need to check if any cpu is in
  * error state. If not, we drive on. If yes, we need to panic. The
  * hypervisor call hv_cpu_state() is being used for checking the
- * cpu state.
+ * cpu state.  And reset %tick_compr in case tick-compare was lost.
  */
 static void
 errh_rq_full(struct async_flt *afltp)
@@ -654,6 +654,10 @@
 	processorid_t who;
 	uint64_t cpu_state;
 	uint64_t retval;
+	uint64_t current_tick;
+
+	current_tick = (uint64_t)gettick();
+	tickcmpr_set(current_tick);
 
 	for (who = 0; who < NCPU; who++)
 		if (CPU_IN_SET(cpu_ready_set, who)) {