|
@@ -42,8 +42,9 @@ int Process::sys$purge(int mode)
|
|
|
NonnullRefPtrVector<PurgeableVMObject> vmobjects;
|
|
|
{
|
|
|
InterruptDisabler disabler;
|
|
|
- MM.for_each_vmobject_of_type<PurgeableVMObject>([&](auto& vmobject) {
|
|
|
- vmobjects.append(vmobject);
|
|
|
+ MM.for_each_vmobject([&](auto& vmobject) {
|
|
|
+ if (vmobject.is_purgeable())
|
|
|
+ vmobjects.append(static_cast<PurgeableVMObject&>(vmobject));
|
|
|
return IterationDecision::Continue;
|
|
|
});
|
|
|
}
|
|
@@ -55,8 +56,9 @@ int Process::sys$purge(int mode)
|
|
|
NonnullRefPtrVector<InodeVMObject> vmobjects;
|
|
|
{
|
|
|
InterruptDisabler disabler;
|
|
|
- MM.for_each_vmobject_of_type<InodeVMObject>([&](auto& vmobject) {
|
|
|
- vmobjects.append(vmobject);
|
|
|
+ MM.for_each_vmobject([&](auto& vmobject) {
|
|
|
+ if (vmobject.is_inode())
|
|
|
+ vmobjects.append(static_cast<InodeVMObject&>(vmobject));
|
|
|
return IterationDecision::Continue;
|
|
|
});
|
|
|
}
|