aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/sgi-gru/grufault.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/misc/sgi-gru/grufault.c')
-rw-r--r--drivers/misc/sgi-gru/grufault.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/misc/sgi-gru/grufault.c b/drivers/misc/sgi-gru/grufault.c
index a489807613f8..6d0681236db5 100644
--- a/drivers/misc/sgi-gru/grufault.c
+++ b/drivers/misc/sgi-gru/grufault.c
@@ -614,7 +614,7 @@ int gru_get_exception_detail(unsigned long arg)
614 } else if (gts->ts_gru) { 614 } else if (gts->ts_gru) {
615 cbrnum = thread_cbr_number(gts, ucbnum); 615 cbrnum = thread_cbr_number(gts, ucbnum);
616 cbe = get_cbe_by_index(gts->ts_gru, cbrnum); 616 cbe = get_cbe_by_index(gts->ts_gru, cbrnum);
617 prefetchw(cbe);/* Harmless on hardware, required for emulator */ 617 gru_flush_cache(cbe); /* CBE not coherent */
618 excdet.opc = cbe->opccpy; 618 excdet.opc = cbe->opccpy;
619 excdet.exopc = cbe->exopccpy; 619 excdet.exopc = cbe->exopccpy;
620 excdet.ecause = cbe->ecause; 620 excdet.ecause = cbe->ecause;
@@ -622,6 +622,7 @@ int gru_get_exception_detail(unsigned long arg)
622 excdet.exceptdet1 = cbe->idef3upd; 622 excdet.exceptdet1 = cbe->idef3upd;
623 excdet.cbrstate = cbe->cbrstate; 623 excdet.cbrstate = cbe->cbrstate;
624 excdet.cbrexecstatus = cbe->cbrexecstatus; 624 excdet.cbrexecstatus = cbe->cbrexecstatus;
625 gru_flush_cache(cbe);
625 ret = 0; 626 ret = 0;
626 } else { 627 } else {
627 ret = -EAGAIN; 628 ret = -EAGAIN;