From 0d59549cd9db2263b1cc1b90e8abd05229eaab5b Mon Sep 17 00:00:00 2001 From: Andreas Sandberg Date: Mon, 7 Jan 2013 13:05:45 -0500 Subject: arm: Fix draining of the pagetable walker when squashing Since the page table walker only checks if a drain has completed in doL1DescriptorWrapper() and doL2DescriptorWrapper(), it sometimes looses track of a drain request if there is a squash. This changeset adds a completeDrain() call after squashing requests in the pending queue, which fixes this issue. --- src/arch/arm/table_walker.cc | 1 + 1 file changed, 1 insertion(+) (limited to 'src/arch/arm/table_walker.cc') diff --git a/src/arch/arm/table_walker.cc b/src/arch/arm/table_walker.cc index e4c6209d6..99a7592c1 100644 --- a/src/arch/arm/table_walker.cc +++ b/src/arch/arm/table_walker.cc @@ -225,6 +225,7 @@ TableWalker::processWalkWrapper() // if we've still got pending translations schedule more work nextWalk(tc); currState = NULL; + completeDrain(); } Fault -- cgit v1.2.3