On 07/05/20 12:04, Stefan Hajnoczi wrote:
>>>               (NVME_PMRCAP_PMRWBM(n->bar.pmrcap) & 0x02)) {
>>> -            qemu_ram_writeback(n->pmrdev->mr.ram_block,
>>> -                               0, n->pmrdev->size);
>>> +            memory_region_do_writeback(&n->pmrdev->mr, 0, n->pmrdev->size);
> qemu_ram_write() is being called because we need to msync or persist
> pmem here.
> 
> The memory_region_do_writeback() API is not equivalent, its purpose is
> for dirty write logging (which we don't care about here because the
> writes themselves will already have been logged when the guest performed
> them).
> 
> I think qemu_ram_writeback() should just be made common so that this
> code isn't target-specific. Maybe it should be renamed to
> qemu_ram_msync() to avoid confusion with dirty write APIs.

Yes, we can add qemu_ram_msync and memory_region_msync.

Paolo

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to