Theses patches mostly improve non-functional aspects of the Jailhouse
configuration parser. Logic for unpacking binary data is consolidated
into CStruct class, which all parser classes are inherited from.
To improve input flexibility, data slices are replaced with I/O streams
(see Pythons 'io' package for how to use them).
Finally, a CPU set check is added, which will list conflicting CPUs
between cells and also usage of non-existing ones in the root-cell.

Changes v2->v3:
  - fix config_parser usage in jailhouse-cell-linux
  - fix output style in "CPU checks" commit

Changes v1->v2:
  - reference class variables via class object or class name
  - drop implicit PEP8 formatting
  - dropped unused patches

Andrej Utz (7):
  pyjailhouse: config_parser: store binary format specification in
    struct.Struct
  pyjailhouse: config_parser: move parsing into class methods
  pyjailhouse: config_parser: consolidate binary parsing into CStruct
    class
  pyjailhouse: config_parser: use I/O stream instead slice of bytes
  pyjailhouse: config_parser: parse pin_bitman in Irqchip as list
  pyjailhouse: config_parser: consolidate header parsing
  tools: config-check: add CPU overlap and boundary check

 pyjailhouse/config_parser.py | 296 ++++++++++++++++++++++-------------
 tools/jailhouse-cell-linux   |   2 +-
 tools/jailhouse-config-check |  33 +++-
 3 files changed, 215 insertions(+), 116 deletions(-)

--
2.28.0

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jailhouse-dev/20200825145032.115837-1-andrej.utz%40st.oth-regensburg.de.

Reply via email to