kernel/vm: Introduce VMCache::CanOvercommit().
Allows the Anonymous caches to report overcommitting status.
This commit is contained in:
@@ -149,6 +149,7 @@ public:
|
|||||||
{ return fRefCount; }
|
{ return fRefCount; }
|
||||||
|
|
||||||
// backing store operations
|
// backing store operations
|
||||||
|
virtual bool CanOvercommit();
|
||||||
virtual status_t Commit(off_t size, int priority);
|
virtual status_t Commit(off_t size, int priority);
|
||||||
virtual bool HasPage(off_t offset);
|
virtual bool HasPage(off_t offset);
|
||||||
|
|
||||||
|
|||||||
@@ -738,6 +738,13 @@ VMAnonymousCache::Commit(off_t size, int priority)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool
|
||||||
|
VMAnonymousCache::CanOvercommit()
|
||||||
|
{
|
||||||
|
return fCanOvercommit;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool
|
bool
|
||||||
VMAnonymousCache::HasPage(off_t offset)
|
VMAnonymousCache::HasPage(off_t offset)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ public:
|
|||||||
|
|
||||||
virtual status_t Discard(off_t offset, off_t size);
|
virtual status_t Discard(off_t offset, off_t size);
|
||||||
|
|
||||||
|
virtual bool CanOvercommit();
|
||||||
virtual status_t Commit(off_t size, int priority);
|
virtual status_t Commit(off_t size, int priority);
|
||||||
virtual bool HasPage(off_t offset);
|
virtual bool HasPage(off_t offset);
|
||||||
virtual bool DebugHasPage(off_t offset);
|
virtual bool DebugHasPage(off_t offset);
|
||||||
|
|||||||
@@ -94,6 +94,13 @@ VMAnonymousNoSwapCache::Commit(off_t size, int priority)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool
|
||||||
|
VMAnonymousNoSwapCache::CanOvercommit()
|
||||||
|
{
|
||||||
|
return fCanOvercommit;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool
|
bool
|
||||||
VMAnonymousNoSwapCache::HasPage(off_t offset)
|
VMAnonymousNoSwapCache::HasPage(off_t offset)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ public:
|
|||||||
int32 numGuardPages,
|
int32 numGuardPages,
|
||||||
uint32 allocationFlags);
|
uint32 allocationFlags);
|
||||||
|
|
||||||
|
virtual bool CanOvercommit();
|
||||||
virtual status_t Commit(off_t size, int priority);
|
virtual status_t Commit(off_t size, int priority);
|
||||||
virtual bool HasPage(off_t offset);
|
virtual bool HasPage(off_t offset);
|
||||||
|
|
||||||
|
|||||||
@@ -1298,6 +1298,13 @@ VMCache::FlushAndRemoveAllPages()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool
|
||||||
|
VMCache::CanOvercommit()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
status_t
|
status_t
|
||||||
VMCache::Commit(off_t size, int priority)
|
VMCache::Commit(off_t size, int priority)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user