arm: Fix TLB ignoring faults when table walking
arm: Fix TLB ignoring faults when table walking

This patch fixes a case where the Minor CPU can deadlock due to the lack
of a response to TLB request because of a bug in fault handling in the ARM
table walker.

TableWalker::processWalkWrapper is the scheduler-called wrapper which
handles deferred walks which calls to TableWalker::wait cannot immediately
process.  The handling of faults generated by processWalk{AArch64,LPAE,}
calls in those two functions is is different.  processWalkWrapper ignores
fault returns from processWalk... which can lead to ::finish not being
called on a translation.

This fix provides fault handling in processWalkWrapper similar to that
found in the leaf functions which BaseTLB::Translation::finish.

sobercoder/gem5,markoshorro/gem5,rallylee/gem5,kaiyuanl/gem5,markoshorro/gem5,gedare/gem5,powerjg/gem5-ci-test,markoshorro/gem5,gem5/gem5,powerjg/gem5-ci-test,markoshorro/gem5,Weil0ng/gem5,cancro7/gem5,briancoutinho0905/2dsampling,zlfben/gem5,rjschof/gem5,rjschof/gem5,qizenguf/MLC-STT,SanchayanMaity/gem5,briancoutinho0905/2dsampling,gedare/gem5,sobercoder/gem5,TUD-OS/gem5-dtu,HwisooSo/gemV-update,aclifton/cpeg853-gem5,powerjg/gem5-ci-test,Weil0ng/gem5,gedare/gem5,TUD-OS/gem5-dtu,briancoutinho0905/2dsampling,TUD-OS/gem5-dtu,cancro7/gem5,zlfben/gem5,Weil0ng/gem5,qizenguf/MLC-STT,austinharris/gem5-riscv,rjschof/gem5,SanchayanMaity/gem5,rallylee/gem5,KuroeKurose/gem5,aclifton/cpeg853-gem5,cancro7/gem5,rjschof/gem5,kaiyuanl/gem5,KuroeKurose/gem5,Weil0ng/gem5,gedare/gem5,rjschof/gem5,HwisooSo/gemV-update,Weil0ng/gem5,qizenguf/MLC-STT,markoshorro/gem5,KuroeKurose/gem5,qizenguf/MLC-STT,powerjg/gem5-ci-test,briancoutinho0905/2dsampling,HwisooSo/gemV-update,kaiyuanl/gem5,briancoutinho0905/2dsampling,gedare/gem5,kaiyuanl/gem5,HwisooSo/gemV-update,TUD-OS/gem5-dtu,zlfben/gem5,rjschof/gem5,austinharris/gem5-riscv,rallylee/gem5,powerjg/gem5-ci-test,gem5/gem5,aclifton/cpeg853-gem5,SanchayanMaity/gem5,KuroeKurose/gem5,gedare/gem5,cancro7/gem5,aclifton/cpeg853-gem5,kaiyuanl/gem5,cancro7/gem5,qizenguf/MLC-STT,zlfben/gem5,Weil0ng/gem5,aclifton/cpeg853-gem5,zlfben/gem5,TUD-OS/gem5-dtu,gem5/gem5,sobercoder/gem5,rallylee/gem5,TUD-OS/gem5-dtu,markoshorro/gem5,gedare/gem5,SanchayanMaity/gem5,briancoutinho0905/2dsampling,briancoutinho0905/2dsampling,zlfben/gem5,austinharris/gem5-riscv,SanchayanMaity/gem5,sobercoder/gem5,qizenguf/MLC-STT,aclifton/cpeg853-gem5,austinharris/gem5-riscv,sobercoder/gem5,aclifton/cpeg853-gem5,gem5/gem5,Weil0ng/gem5,cancro7/gem5,austinharris/gem5-riscv,TUD-OS/gem5-dtu,sobercoder/gem5,markoshorro/gem5,gem5/gem5,HwisooSo/gemV-update,KuroeKurose/gem5,KuroeKurose/gem5,rallylee/gem5,zlfben/gem5,powerjg/gem5-ci-test,SanchayanMaity/gem5,HwisooSo/gemV-update,rallylee/gem5,rallylee/gem5,rjschof/gem5,cancro7/gem5,HwisooSo/gemV-update,SanchayanMaity/gem5,gem5/gem5,gem5/gem5,KuroeKurose/gem5,powerjg/gem5-ci-test,kaiyuanl/gem5,austinharris/gem5-riscv,sobercoder/gem5,qizenguf/MLC-STT,austinharris/gem5-riscv,kaiyuanl/gem5