mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 19:38:12 +00:00
Kernel: Protect looping over VMObject regions
We need to hold the memory manager lock so nobody else can modify these lists while we're iterating them.
This commit is contained in:
parent
0e27a6e39e
commit
bcbe2fe525
1 changed files with 1 additions and 0 deletions
|
@ -220,6 +220,7 @@ private:
|
|||
template<typename Callback>
|
||||
void VMObject::for_each_region(Callback callback)
|
||||
{
|
||||
ScopedSpinLock lock(s_mm_lock);
|
||||
// FIXME: Figure out a better data structure so we don't have to walk every single region every time an inode changes.
|
||||
// Perhaps VMObject could have a Vector<Region*> with all of his mappers?
|
||||
for (auto& region : MM.m_user_regions) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue