On Wed, Dec 02, 2015 at 06:26:37PM +0200, Michael S. Tsirkin wrote: > On Wed, Dec 02, 2015 at 05:58:24PM +0200, Victor Kaplansky wrote: > > On Wed, Dec 02, 2015 at 10:38:02PM +0800, Yuanhan Liu wrote: > > > On Wed, Dec 02, 2015 at 04:07:02PM +0200, Victor Kaplansky wrote: > > > > On Wed, Dec 02, 2015 at 11:43:12AM +0800, Yuanhan Liu wrote: > > > > > Invoking vhost_log_write() to mark corresponding page as dirty while > > > > > updating used vring. > > > > > > > > Looks good, thanks! > > > > > > > > I didn't find where you log the dirty pages in result of data > > > > written to the buffers pointed by the descriptors in RX vring. > > > > AFAIU, the buffers of RX queue reside in guest's memory and have > > > > to be marked as dirty if they are written. What do you say? > > > > > > Yeah, we should. I got a question then: why log_guest_addr is set > > > to the physical address of used vring in guest? I mean, apparently, > > > we need log more changes other than used vring only. > > > > The physical address of used vring sent to the back-end, since > > otherwise back-end has to perform virtual to physical > > translation, and we want to avoid this. The dirty buffers has to > > be marked as well, but their guest's physical address is known > > directly from the descriptors. > > Yes, people wanted to be able to do multiple physical > addresses to one virtual so you do not want to translate > virt to phys.
Thank you both, it's clear to me then. --yliu