Re: [PATCH v11 10/11] qcow2_format.py: introduce Qcow2HeaderExtensionsDoc class

2020-07-30 Thread Andrey Shinkevich

On 28.07.2020 14:36, Vladimir Sementsov-Ogievskiy wrote:

17.07.2020 11:14, Andrey Shinkevich wrote:

Per original script design, QcowHeader class may dump the QCOW2 header
info separately from the QCOW2 extensions info. To implement the
to_dict() method for dumping extensions, let us introduce the class
Qcow2HeaderExtensionsDoc.


I think, when dumping to qcow2, no needs to omit extensions, let's 
just always dump them.




Signed-off-by: Andrey Shinkevich 
---
  tests/qemu-iotests/qcow2_format.py | 9 +
  1 file changed, 9 insertions(+)

diff --git a/tests/qemu-iotests/qcow2_format.py 
b/tests/qemu-iotests/qcow2_format.py

index 19d29b8..d2a8659 100644
--- a/tests/qemu-iotests/qcow2_format.py
+++ b/tests/qemu-iotests/qcow2_format.py
@@ -248,6 +248,15 @@ class Qcow2BitmapTable:
  return dict(entries=self.entries)
    +class Qcow2HeaderExtensionsDoc:
+
+    def __init__(self, extensions):
+    self.extensions = extensions
+
+    def to_dict(self):
+    return dict(Header_extensions=self.extensions)


s/H/h/



Sorry. I ment the non-JSON format dump as the original capitalized 'H'. 
The class Qcow2HeaderExtensionsDoc has been removed in the next v12.


Andrey



+
+
  QCOW2_EXT_MAGIC_BITMAPS = 0x23852875









Re: [PATCH v11 10/11] qcow2_format.py: introduce Qcow2HeaderExtensionsDoc class

2020-07-30 Thread Andrey Shinkevich

On 28.07.2020 14:36, Vladimir Sementsov-Ogievskiy wrote:

17.07.2020 11:14, Andrey Shinkevich wrote:

Per original script design, QcowHeader class may dump the QCOW2 header
info separately from the QCOW2 extensions info. To implement the
to_dict() method for dumping extensions, let us introduce the class
Qcow2HeaderExtensionsDoc.


I think, when dumping to qcow2, no needs to omit extensions, let's 
just always dump them.




Signed-off-by: Andrey Shinkevich 
---
  tests/qemu-iotests/qcow2_format.py | 9 +
  1 file changed, 9 insertions(+)

diff --git a/tests/qemu-iotests/qcow2_format.py 
b/tests/qemu-iotests/qcow2_format.py

index 19d29b8..d2a8659 100644
--- a/tests/qemu-iotests/qcow2_format.py
+++ b/tests/qemu-iotests/qcow2_format.py
@@ -248,6 +248,15 @@ class Qcow2BitmapTable:
  return dict(entries=self.entries)
    +class Qcow2HeaderExtensionsDoc:
+
+    def __init__(self, extensions):
+    self.extensions = extensions
+
+    def to_dict(self):
+    return dict(Header_extensions=self.extensions)


s/H/h/



It is the original code and the change would be unralated to my patch.

Should I make a separate patch for this change?

Andrey



+
+
  QCOW2_EXT_MAGIC_BITMAPS = 0x23852875









Re: [PATCH v11 10/11] qcow2_format.py: introduce Qcow2HeaderExtensionsDoc class

2020-07-28 Thread Vladimir Sementsov-Ogievskiy

28.07.2020 16:27, Andrey Shinkevich wrote:

On 28.07.2020 14:36, Vladimir Sementsov-Ogievskiy wrote:

17.07.2020 11:14, Andrey Shinkevich wrote:

Per original script design, QcowHeader class may dump the QCOW2 header
info separately from the QCOW2 extensions info. To implement the
to_dict() method for dumping extensions, let us introduce the class
Qcow2HeaderExtensionsDoc.


I think, when dumping to qcow2, no needs to omit extensions, let's just always 
dump them.



Do you like to eliminate the command 'dump-header-exts' and the relevant 
handler 'cmd_dump_header_exts' from the script qcow2.py ?



No, what already works should work of course. But we can not support -j for 
them. Still, not problem to support it. I just don't like this patch with an 
extra class. See my later comment, we can easily support json without this 
class.






Signed-off-by: Andrey Shinkevich 
---
  tests/qemu-iotests/qcow2_format.py | 9 +
  1 file changed, 9 insertions(+)

diff --git a/tests/qemu-iotests/qcow2_format.py 
b/tests/qemu-iotests/qcow2_format.py
index 19d29b8..d2a8659 100644
--- a/tests/qemu-iotests/qcow2_format.py
+++ b/tests/qemu-iotests/qcow2_format.py
@@ -248,6 +248,15 @@ class Qcow2BitmapTable:
  return dict(entries=self.entries)
    +class Qcow2HeaderExtensionsDoc:
+
+    def __init__(self, extensions):
+    self.extensions = extensions
+
+    def to_dict(self):
+    return dict(Header_extensions=self.extensions)


s/H/h/


+
+
  QCOW2_EXT_MAGIC_BITMAPS = 0x23852875








--
Best regards,
Vladimir



Re: [PATCH v11 10/11] qcow2_format.py: introduce Qcow2HeaderExtensionsDoc class

2020-07-28 Thread Andrey Shinkevich

On 28.07.2020 14:36, Vladimir Sementsov-Ogievskiy wrote:

17.07.2020 11:14, Andrey Shinkevich wrote:

Per original script design, QcowHeader class may dump the QCOW2 header
info separately from the QCOW2 extensions info. To implement the
to_dict() method for dumping extensions, let us introduce the class
Qcow2HeaderExtensionsDoc.


I think, when dumping to qcow2, no needs to omit extensions, let's 
just always dump them.




Do you like to eliminate the command 'dump-header-exts' and the relevant 
handler 'cmd_dump_header_exts' from the script qcow2.py ?


Andrey




Signed-off-by: Andrey Shinkevich 
---
  tests/qemu-iotests/qcow2_format.py | 9 +
  1 file changed, 9 insertions(+)

diff --git a/tests/qemu-iotests/qcow2_format.py 
b/tests/qemu-iotests/qcow2_format.py

index 19d29b8..d2a8659 100644
--- a/tests/qemu-iotests/qcow2_format.py
+++ b/tests/qemu-iotests/qcow2_format.py
@@ -248,6 +248,15 @@ class Qcow2BitmapTable:
  return dict(entries=self.entries)
    +class Qcow2HeaderExtensionsDoc:
+
+    def __init__(self, extensions):
+    self.extensions = extensions
+
+    def to_dict(self):
+    return dict(Header_extensions=self.extensions)


s/H/h/


+
+
  QCOW2_EXT_MAGIC_BITMAPS = 0x23852875









Re: [PATCH v11 10/11] qcow2_format.py: introduce Qcow2HeaderExtensionsDoc class

2020-07-28 Thread Vladimir Sementsov-Ogievskiy

17.07.2020 11:14, Andrey Shinkevich wrote:

Per original script design, QcowHeader class may dump the QCOW2 header
info separately from the QCOW2 extensions info. To implement the
to_dict() method for dumping extensions, let us introduce the class
Qcow2HeaderExtensionsDoc.


I think, when dumping to qcow2, no needs to omit extensions, let's just always 
dump them.



Signed-off-by: Andrey Shinkevich 
---
  tests/qemu-iotests/qcow2_format.py | 9 +
  1 file changed, 9 insertions(+)

diff --git a/tests/qemu-iotests/qcow2_format.py 
b/tests/qemu-iotests/qcow2_format.py
index 19d29b8..d2a8659 100644
--- a/tests/qemu-iotests/qcow2_format.py
+++ b/tests/qemu-iotests/qcow2_format.py
@@ -248,6 +248,15 @@ class Qcow2BitmapTable:
  return dict(entries=self.entries)
  
  
+class Qcow2HeaderExtensionsDoc:

+
+def __init__(self, extensions):
+self.extensions = extensions
+
+def to_dict(self):
+return dict(Header_extensions=self.extensions)


s/H/h/


+
+
  QCOW2_EXT_MAGIC_BITMAPS = 0x23852875
  
  





--
Best regards,
Vladimir