qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 2/2] analyze-migration.py: replace numpy with python 3.2


From: Cleber Rosa
Subject: Re: [PATCH 2/2] analyze-migration.py: replace numpy with python 3.2
Date: Tue, 10 Dec 2019 12:49:09 -0500
User-agent: Mutt/1.12.1 (2019-06-15)

On Tue, Dec 10, 2019 at 02:14:18PM +0400, Marc-André Lureau wrote:
> Hi
> 
> On Tue, Dec 10, 2019 at 6:59 AM Eduardo Habkost <address@hidden> wrote:
> >
> > On Fri, Dec 06, 2019 at 09:27:23AM -0500, Cleber Rosa wrote:
> > > On Wed, Nov 27, 2019 at 02:10:38PM +0400, Marc-André Lureau wrote:
> > > > Use int.from_bytes() from python 3.2 instead.
> > > >
> > > > Signed-off-by: Marc-André Lureau <address@hidden>
> > > > ---
> > > >  scripts/analyze-migration.py | 35 +++++++++++++++++++----------------
> > > >  1 file changed, 19 insertions(+), 16 deletions(-)
> > > >
> > > > diff --git a/scripts/analyze-migration.py b/scripts/analyze-migration.py
> > > > index 2b835d9b70..96a31d3974 100755
> > > > --- a/scripts/analyze-migration.py
> > > > +++ b/scripts/analyze-migration.py
> > > > @@ -1,4 +1,4 @@
> > > > -#!/usr/bin/env python
> > > > +#!/usr/bin/env python3
> > [...]
> > >
> > > Marc-André, I couldn't yet pinpoint the reason yet, but this patch
> > > changes the parsing of bool fields.  This is a diff between the output
> > > pre/post this patch on the same images:
> > >
> > > $ diff -u out_x8664_pre out_x8664_post
> > > --- out_x8664_pre       2019-12-06 09:14:16.128943264 -0500
> > > +++ out_x8664_post      2019-12-06 09:23:35.861378600 -0500
> > > @@ -3039,7 +3039,7 @@
> > >              "mac_reg[RADV]": "0x00000000",
> > >              "mac_reg[TADV]": "0x00000000",
> > >              "mac_reg[ITR]": "0x00000000",
> > > -            "mit_irq_level": true
> > > +            "mit_irq_level": false
> > >          },
> > >          "e1000/full_mac_state": {
> > >              "mac_reg": [
> > > @@ -36010,10 +36010,10 @@
> > >              ],
> > >              "smb_auxctl": "0x02",
> > >              "smb_blkdata": "0x00",
> > > -            "i2c_enable": true,
> > > +            "i2c_enable": false,
> > >              "op_done": true,
> > > -            "in_i2c_block_read": true,
> > > -            "start_transaction_on_status_read": true
> > > +            "in_i2c_block_read": false,
> > > +            "start_transaction_on_status_read": false
> > >          },
> > >          "ar.tmr.timer": "ff ff ff ff ff ff ff ff",
> > >          "ar.tmr.overflow_time": "0x0000000000000000",
> > >
> > > This true/false flipping is consistent across various images (tried on
> > > images generated on a few other targets).
> >
> > It looks like moving to python3 accidentally fixes a bug.
> >
> > This is VMSDFieldBool.read:
> >
> >     def read(self):
> >         super(VMSDFieldBool, self).read()
> >         if self.data[0] == 0:
> >             self.data = False
> >         else:
> >             self.data = True
> >         return self.data
> >
> > On python2, MigrationFile.readvar() returned a string, so the
> > (self.data[0] == 0) check was never true.  This means all boolean
> > fields were always initialized to True.
> >
> > On python3, MigrationFile.readvar() returns a bytearray, so the
> > (self.data[0] == 0) check now works as expected.
> 
> Ah! nice surprise. Do you mind updating the commit message on commit?
> Or should I resend?
> 
> thanks
> 
> -- 
> Marc-André Lureau
> 

Yep, I'm queueing this with an updated commit message.

Eduardo, does your comment imply a "Reviewed-by"?

Cheers,
- Cleber.

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]