[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH v2 10/49] rtl8139: adding new fields to vmst
From: |
Pavel Dovgaluk |
Subject: |
Re: [Qemu-devel] [RFC PATCH v2 10/49] rtl8139: adding new fields to vmstate |
Date: |
Wed, 30 Jul 2014 12:24:04 +0400 |
> From: Paolo Bonzini [mailto:address@hidden On Behalf Of Paolo Bonzini
> Il 28/07/2014 11:54, Pavel Dovgaluk ha scritto:
> >>> > > + VMSTATE_TIMER_V(timer, RTL8139State, 5),
> >> >
> >> > timer need not be migrated, because it is reinstated by
> >> > rtl8139_post_load.
> >> >
> > That's true for normal execution.
> > In replay execution mode post_load can be called before cached virtual
> > clock
> > values are loaded. This may cause invalid setting of the timer and raising
> > an IRQ which didn't happen in record mode.
> > I will update this patch to fix post_load function and avoid this
> > non-deterministic behavior.
>
> This is what worries me of this series. These invariants are not
> documented anywhere, and people will break them unless you add
> assertions that also hold in normal mode.
Assertions is a good idea, we added such warning message to qemu_get_timedate
function
to be sure, that it is used correctly with replay.
Another thing, that could help for making snapshots - find a way to load replay
structures
before all other ones. Are there any priorities in migration states list?
Priorities could also solve some other issues, because sometimes post_load
function
of one device uses other devices' functions. And the second ones could be not
loaded yet.
Pavel Dovgalyuk
[Qemu-devel] [RFC PATCH v2 09/49] pckbd: adding new fields to vmstate, Pavel Dovgalyuk, 2014/07/17
[Qemu-devel] [RFC PATCH v2 42/49] replay: network packets record/replay, Pavel Dovgalyuk, 2014/07/17
[Qemu-devel] [RFC PATCH v2 44/49] replay: serial port, Pavel Dovgalyuk, 2014/07/17
[Qemu-devel] [RFC PATCH v2 43/49] replay: audio data record/replay, Pavel Dovgalyuk, 2014/07/17
[Qemu-devel] [RFC PATCH v2 45/49] replay: USB passthrough, Pavel Dovgalyuk, 2014/07/17
[Qemu-devel] [RFC PATCH v2 46/49] replay: replay_info command, Pavel Dovgalyuk, 2014/07/17