1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2026-01-17 18:51:10 +00:00
serenity/Kernel/Memory
Andreas Kling a3b2b20782 Kernel: Remove global MM lock in favor of SpinlockProtected
Globally shared MemoryManager state is now kept in a GlobalData struct
and wrapped in SpinlockProtected.

A small set of members are left outside the GlobalData struct as they
are only set during boot initialization, and then remain constant.
This allows us to access those members without taking any locks.
2022-08-26 01:04:51 +02:00
..
AddressSpace.cpp Kernel: Don't wrap AddressSpace's RegionTree in SpinlockProtected 2022-08-24 14:57:51 +02:00
AddressSpace.h Kernel: Don't wrap AddressSpace's RegionTree in SpinlockProtected 2022-08-24 14:57:51 +02:00
AllocationStrategy.h Kernel: Rename Kernel/VM/ to Kernel/Memory/ 2021-08-06 14:05:58 +02:00
AnonymousVMObject.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
AnonymousVMObject.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
InodeVMObject.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
InodeVMObject.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
MappedROM.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
MemoryManager.cpp Kernel: Remove global MM lock in favor of SpinlockProtected 2022-08-26 01:04:51 +02:00
MemoryManager.h Kernel: Remove global MM lock in favor of SpinlockProtected 2022-08-26 01:04:51 +02:00
PageDirectory.cpp Kernel: Don't take MM lock in ~PageDirectory() 2022-08-24 14:57:51 +02:00
PageDirectory.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
PageFaultResponse.h Kernel: Rename Kernel/VM/ to Kernel/Memory/ 2021-08-06 14:05:58 +02:00
PhysicalPage.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
PhysicalPage.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
PhysicalRegion.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
PhysicalRegion.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
PhysicalZone.cpp Kernel: Add implied auto qualifiers in Memory 2022-01-09 23:29:57 -08:00
PhysicalZone.h Kernel: Remove the kmalloc_eternal heap :^) 2021-12-28 21:02:38 +01:00
PrivateInodeVMObject.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
PrivateInodeVMObject.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
Region.cpp Kernel: Remove global MM lock in favor of SpinlockProtected 2022-08-26 01:04:51 +02:00
Region.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
RegionTree.cpp Kernel: Wrap RegionTree objects in SpinlockProtected 2022-08-24 14:57:51 +02:00
RegionTree.h Kernel: Wrap process address spaces in SpinlockProtected 2022-08-24 14:57:51 +02:00
RingBuffer.cpp Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
RingBuffer.h Kernel: Require lock rank for Spinlock construction 2022-08-19 20:26:47 -07:00
ScatterGatherList.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
ScatterGatherList.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
ScopedAddressSpaceSwitcher.cpp Kernel: Implement InterruptDisabler using generic Processor functions 2022-06-02 13:14:12 +01:00
ScopedAddressSpaceSwitcher.h Kernel: Rename ProcessPagingScope => ScopedAddressSpaceSwitcher 2021-09-06 18:56:51 +02:00
SharedFramebufferVMObject.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
SharedFramebufferVMObject.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
SharedInodeVMObject.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
SharedInodeVMObject.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
TypedMapping.h Kernel/Memory: Add TypedMapping base_address method 2022-05-05 20:55:57 +02:00
VirtualRange.cpp Kernel: Use AddressSpace region tree for range allocation 2022-04-03 21:51:58 +02:00
VirtualRange.h Everywhere: Add sv suffix to strings relying on StringView(char const*) 2022-07-12 23:11:35 +02:00
VMObject.cpp Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00
VMObject.h Kernel: Use RefPtr instead of LockRefPtr for PhysicalPage 2022-08-24 18:35:41 +02:00