1.1 --- a/page_queue.cc Sun Mar 28 22:41:12 2021 +0200
1.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
1.3 @@ -1,39 +0,0 @@
1.4 -#include "page_queue.h"
1.5 -
1.6 -
1.7 -
1.8 -void PageQueue::discard(Queue &queue, Memory *memory)
1.9 -{
1.10 - while (!queue.empty())
1.11 - {
1.12 - Flexpage *flexpage = queue.front().flexpage;
1.13 -
1.14 - queue.pop_front();
1.15 - memory->release(flexpage->region);
1.16 - delete flexpage;
1.17 - }
1.18 -}
1.19 -
1.20 -bool PageQueue::remove(Queue &queue, Positions &positions, PageOwner *owner, Flexpage *flexpage)
1.21 -{
1.22 - Positions::iterator position = positions.find(flexpage);
1.23 -
1.24 - if (position == positions.end())
1.25 - return false;
1.26 -
1.27 - /* The found owner may be different from the requesting owner or even NULL
1.28 - if another owner has acquired and then purged its pages. Such a purged
1.29 - flexpage is not immediately usable, however. */
1.30 -
1.31 - Queue::iterator entry = position->second;
1.32 -
1.33 - if ((entry->owner == NULL) || (entry->owner != owner))
1.34 - return false;
1.35 -
1.36 - queue.erase(entry);
1.37 - positions.erase(position);
1.38 -
1.39 - return true;
1.40 -}
1.41 -
1.42 -// vim: tabstop=4 expandtab shiftwidth=4