|
From: | Anthony Liguori |
Subject: | Re: [Qemu-devel] [PATCH v4 0/6] save/restore on Xen |
Date: | Tue, 24 Jan 2012 07:14:47 -0600 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.23) Gecko/20110922 Lightning/1.0b2 Thunderbird/3.1.15 |
On 01/24/2012 05:10 AM, Avi Kivity wrote:
On 01/23/2012 07:18 PM, Anthony Liguori wrote:Generally speaking, RAM is an independent device in most useful cases.Can you give examples? Do you mean a subdevice with composition, or a really independent device?
I expect we'll have one Ram device. It's size will be configurable. One Ram device will hang off of the machine which would be the main ram.
A video card would have a Ram device via composition.The important consideration about reset is how it propagates. My expectation is that we'll propagate reset through the composition tree in a preorder transversal. That means in the VGA device reset function, it's child device (Ram) has not been reset yet.
Onboard RAM is a very special case because it's extremely unusual.What's unusual (or even extremely unusual) about it? I don't see a difference between a few billion bits of state and, say, the few bits of state in an RTC device.
Okay, but let's not get philosophical here :-) There are very few devices that have a DRAM chip that is mapped through a bar into the main address space and behaves (usually) like normal RAM.
We really should view RAM as just another device so I don't like the idea of propagating a global concept of "when RAM is restored" because that treats it specially compared to other devices.Agree. In fact the first step has been taken as now creating a RAM region with memory_region_init_ram() doesn't register it for migration. The next step would be a VMSTATE_RAM() to make it part of the containing device.
That's not necessary (or wise).Let's not confuse a Ram device with a MemoryRegion. They are separate things and should be treated as separate things. I thought we discussed that MemoryRegions are stateless (or at least, there state is all derived) and don't need to be serialized?
Regards, Anthony Liguori
[Prev in Thread] | Current Thread | [Next in Thread] |