summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/kernel.cpp
diff options
context:
space:
mode:
authorGravatar bunnei2022-03-11 17:17:41 -0800
committerGravatar bunnei2022-03-14 18:14:54 -0700
commit51589c5e2128b2d338dceac11b7252432d4955c2 (patch)
tree68f884db2539561933dbd4c2db623ffef6386f25 /src/core/hle/kernel/kernel.cpp
parentcore: hle: kernel: k_process: Remove handle table finalize, reset page table. (diff)
downloadyuzu-51589c5e2128b2d338dceac11b7252432d4955c2.tar.gz
yuzu-51589c5e2128b2d338dceac11b7252432d4955c2.tar.xz
yuzu-51589c5e2128b2d338dceac11b7252432d4955c2.zip
core: hle: kernel: Remove server session tracking.
- These are now allocated/managed by emulated memory, so we do not need to track and free them on shutdown.
Diffstat (limited to 'src/core/hle/kernel/kernel.cpp')
-rw-r--r--src/core/hle/kernel/kernel.cpp22
1 files changed, 0 insertions, 22 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp
index b543f4083..bf5e39266 100644
--- a/src/core/hle/kernel/kernel.cpp
+++ b/src/core/hle/kernel/kernel.cpp
@@ -107,16 +107,6 @@ struct KernelCore::Impl {
107 for (auto* server_port : server_ports_) { 107 for (auto* server_port : server_ports_) {
108 server_port->Close(); 108 server_port->Close();
109 } 109 }
110 // Close all open server sessions.
111 std::unordered_set<KServerSession*> server_sessions_;
112 {
113 std::lock_guard lk(server_sessions_lock);
114 server_sessions_ = server_sessions;
115 server_sessions.clear();
116 }
117 for (auto* server_session : server_sessions_) {
118 server_session->Close();
119 }
120 110
121 // Ensure that the object list container is finalized and properly shutdown. 111 // Ensure that the object list container is finalized and properly shutdown.
122 object_list_container.Finalize(); 112 object_list_container.Finalize();
@@ -697,7 +687,6 @@ struct KernelCore::Impl {
697 } 687 }
698 688
699 std::mutex server_ports_lock; 689 std::mutex server_ports_lock;
700 std::mutex server_sessions_lock;
701 std::mutex registered_objects_lock; 690 std::mutex registered_objects_lock;
702 std::mutex registered_in_use_objects_lock; 691 std::mutex registered_in_use_objects_lock;
703 692
@@ -728,7 +717,6 @@ struct KernelCore::Impl {
728 std::unordered_map<std::string, ServiceInterfaceFactory> service_interface_factory; 717 std::unordered_map<std::string, ServiceInterfaceFactory> service_interface_factory;
729 NamedPortTable named_ports; 718 NamedPortTable named_ports;
730 std::unordered_set<KServerPort*> server_ports; 719 std::unordered_set<KServerPort*> server_ports;
731 std::unordered_set<KServerSession*> server_sessions;
732 std::unordered_set<KAutoObject*> registered_objects; 720 std::unordered_set<KAutoObject*> registered_objects;
733 std::unordered_set<KAutoObject*> registered_in_use_objects; 721 std::unordered_set<KAutoObject*> registered_in_use_objects;
734 722
@@ -932,16 +920,6 @@ KClientPort* KernelCore::CreateNamedServicePort(std::string name) {
932 return impl->CreateNamedServicePort(std::move(name)); 920 return impl->CreateNamedServicePort(std::move(name));
933} 921}
934 922
935void KernelCore::RegisterServerSession(KServerSession* server_session) {
936 std::lock_guard lk(impl->server_sessions_lock);
937 impl->server_sessions.insert(server_session);
938}
939
940void KernelCore::UnregisterServerSession(KServerSession* server_session) {
941 std::lock_guard lk(impl->server_sessions_lock);
942 impl->server_sessions.erase(server_session);
943}
944
945void KernelCore::RegisterKernelObject(KAutoObject* object) { 923void KernelCore::RegisterKernelObject(KAutoObject* object) {
946 std::lock_guard lk(impl->registered_objects_lock); 924 std::lock_guard lk(impl->registered_objects_lock);
947 impl->registered_objects.insert(object); 925 impl->registered_objects.insert(object);