core: reset kernel after service manager in Shutdown

Services can hold kernel objects and do cleanup upon destruction, so we need to keep the kernel alive longer. The new order approximnately resembles the reverse construction order. I will revisit the ordering issue and make it less error-prone after global state cleanup
master
Weiyi Wang 2019-03-12 19:06:20 +07:00
parent acaca4188e
commit 54d2f16c22
1 changed files with 1 additions and 1 deletions

@ -291,7 +291,6 @@ void System::Shutdown() {
// Shutdown emulation session // Shutdown emulation session
GDBStub::Shutdown(); GDBStub::Shutdown();
VideoCore::Shutdown(); VideoCore::Shutdown();
kernel.reset();
HW::Shutdown(); HW::Shutdown();
telemetry_session.reset(); telemetry_session.reset();
rpc_server.reset(); rpc_server.reset();
@ -299,6 +298,7 @@ void System::Shutdown() {
service_manager.reset(); service_manager.reset();
dsp_core.reset(); dsp_core.reset();
cpu_core.reset(); cpu_core.reset();
kernel.reset();
timing.reset(); timing.reset();
app_loader.reset(); app_loader.reset();