Thread (45 messages) 45 messages, 5 authors, 2020-02-06

Re: Balloon pressuring page cache

From: Tyler Sanderson via Virtualization <hidden>
Date: 2020-02-05 18:43:19
Also in: linux-mm

Possibly related (same subject, not in this thread)

On Wed, Feb 5, 2020 at 1:00 AM Wang, Wei W [off-list ref] wrote:
On Wednesday, February 5, 2020 4:57 PM, David Hildenbrand wrote:
quoted
quoted
quoted
Yes, I agree with you. Yet, I am thinking about one
(unlikely?impossible?) scenario. Can you refresh my brain why that
cannot happen (IOW, why we don't have to wait for the host to process
the request)?

1. Guest allocates a page and sends it to the host.
2. Shrinker gets active and releases that page again.
3. Some user in the guest allocates and modifies that page. After
that, it is done using that page for the next hour.
4. The host processes the request and clears the bit in the dirty
bitmap.
quoted
quoted
quoted
5. The guest is being migrated by the host. The modified page is not
being migrated.
Whenever the guest modifies a page during migration, it will be
captured by the dirty logging and the hypervisor will send the dirtied
the
quoted
page in the following round.

Please explain why the steps I outlined don't apply esp. in the last
round.
quoted
Your general statement does not explain why this race can't happen.
The guest is stopped in the last round, thus no page will be modified at
that time.
Isn't the hint only useful during the *first* round?
After the first round if a page becomes free then we need to update the
copy at the migration destination, so freeing a page that previously had
contents should mark it dirty.

Best,
Wei
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help