qcow2_format.py: dump bitmap flags in human readable way.
Introduce the class BitmapFlags that parses a bitmap flags mask. Suggested-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Signed-off-by: Andrey Shinkevich <andrey.shinkevich@virtuozzo.com> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Message-Id: <1596742557-320265-5-git-send-email-andrey.shinkevich@virtuozzo.com> Signed-off-by: Eric Blake <eblake@redhat.com>
This commit is contained in:
parent
991a02ca7f
commit
82cb822324
@ -40,6 +40,22 @@ class Flags64(Qcow2Field):
|
|||||||
return str(bits)
|
return str(bits)
|
||||||
|
|
||||||
|
|
||||||
|
class BitmapFlags(Qcow2Field):
|
||||||
|
|
||||||
|
flags = {
|
||||||
|
0x1: 'in-use',
|
||||||
|
0x2: 'auto'
|
||||||
|
}
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
bits = []
|
||||||
|
for bit in range(64):
|
||||||
|
flag = self.value & (1 << bit)
|
||||||
|
if flag:
|
||||||
|
bits.append(self.flags.get(flag, f'bit-{bit}'))
|
||||||
|
return f'{self.value:#x} ({bits})'
|
||||||
|
|
||||||
|
|
||||||
class Enum(Qcow2Field):
|
class Enum(Qcow2Field):
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
|
Loading…
Reference in New Issue
Block a user