Vladimir Sementsov-Ogievskiy <vsement...@yandex-team.ru> wrote: > On 11.05.23 11:27, Juan Quintela wrote: >> State what are the requeriments to get migration working between qemu >> versions. And once there explain how one is supposed to implement a >> new feature/default value and not break migration. >> Signed-off-by: Juan Quintela <quint...@redhat.com> > > In general looks good to me: > > Reviewed-by: Vladimir Sementsov-Ogievskiy <vsement...@yandex-team.ru>
Thanks. >> --- >> [v2] >> - Add all danp fixes >> [v1] >> I will really appreciate reviews: >> - I don't speak natively .rst format, so let me what I have done >> wrong. >> - English is not my native language either (no points if had guessed >> that). > > Same for me. Sometimes your wording seems awkward to me, but I don't > risk to propose my awkward replacement) happens to me all the time O:-) >> +When we do migration, we have to qemu process: the source and the > > two qemu processes Done. Already reported by daniel. > (also probably we should say QEMU everywhere) Done. >> +target. There are two cases, they are the same version or they are a >> +different version. The easy case is when they are the same version. >> +The difficult one is when they are different versions. >> + >> +There are two things that are different, but they have very similar >> +names and sometimes get confused: >> +- qemu version >> +- machine version >> + >> +Let's start with a practical example, we start with: >> + >> +- qemu-system-x86_64 (v5.2), from now on qemu-5.2. >> +- qemu-system-x86_64 (v5.1), from now on qemu-5.1. >> + >> +Related to this are the "latest" machine types defined on each of >> +them: >> + >> +- pc-q35-5.2 (newer one in qemu-5.2) from now on pc-5.2 >> +- pc-q35-5.1 (newer one qemu-5.1) from now on pc-5.1 > > one in qemu-5.1 done. >> + >> +First of all, migration is only supposed to work if you use the same >> +machine type in both source and destination. The qemu hardware >> +configuration needs to be the same also on source and destination. >> +Most aspects of the backend configuration can be changed at will, >> +except for a few cases where the backend features influence frontend >> +device feature exposure. But that is not relevant for this section. >> + >> +I am going to list the number of combinations that we can have. Let's >> +start with the trivial ones, qemu is the same on source and >> +destination: >> + >> +1 - qemu-5.2 -M pc-5.2 -> migrates to -> qemu-5.2 -M pc-5.2 >> + >> + This is the latest qemu with the latest machine type. >> + This have to work, and if it don't work it is a bug. > > doesn't done. Search for all don't and replace lots of them. >> + >> +2 - qemu-5.1 -M pc-5.1 -> migrates to -> qemu-5.1 -M pc-5.1 >> + >> + Exactly the same case than the previous one, but for 5.1. >> + Nothing to see here either. >> + >> +This are the easiest ones, we will not talk more about them in this >> +section. >> + >> +Now we start with the more interesting cases. Let start with the >> +same qemu but not the same machine type. > > sounds like "different machine type on source and target" for me.. > > Maybe, "not latest machine type" ? Now we start with the more interesting cases. Let start with a the same QEMU process and a different QEMU version machine type. Better? Thanks, Juan.