qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

081.out (6036B)


      1 QA output created by 081
      2 
      3 == creating quorum files ==
      4 Formatting 'TEST_DIR/1.IMGFMT', fmt=IMGFMT size=10485760
      5 Formatting 'TEST_DIR/2.IMGFMT', fmt=IMGFMT size=10485760
      6 Formatting 'TEST_DIR/3.IMGFMT', fmt=IMGFMT size=10485760
      7 
      8 == writing images ==
      9 wrote 10485760/10485760 bytes at offset 0
     10 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     11 
     12 == checking quorum write ==
     13 read 10485760/10485760 bytes at offset 0
     14 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     15 read 10485760/10485760 bytes at offset 0
     16 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     17 read 10485760/10485760 bytes at offset 0
     18 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     19 
     20 == corrupting image ==
     21 wrote 10485760/10485760 bytes at offset 0
     22 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     23 
     24 == checking quorum correction ==
     25 read 10485760/10485760 bytes at offset 0
     26 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     27 
     28 == checking mixed reference/option specification ==
     29 Testing:
     30 QMP_VERSION
     31 {"return": {}}
     32 {"return": {}}
     33 {"return": {}}
     34 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "QUORUM_REPORT_BAD", "data": {"node-name": "drive2", "sectors-count": 20480, "sector-num": 0, "type": "read"}}
     35 read 10485760/10485760 bytes at offset 0
     36 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     37 {"return": ""}
     38 {"return": {}}
     39 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
     40 
     41 
     42 == using quorum rewrite corrupted mode ==
     43 read 10485760/10485760 bytes at offset 0
     44 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     45 
     46 == checking that quorum has corrected the corrupted file ==
     47 read 10485760/10485760 bytes at offset 0
     48 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     49 
     50 == using quorum rewrite corrupted mode without WRITE permission ==
     51 -- corrupting --
     52 wrote 1048576/1048576 bytes at offset 1048576
     53 1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     54 
     55 -- running quorum --
     56 Testing: -blockdev file,node-name=file1,filename=TEST_DIR/1.IMGFMT -blockdev file,node-name=file2,filename=TEST_DIR/2.IMGFMT -blockdev file,node-name=file3,filename=TEST_DIR/3.IMGFMT -blockdev {
     57         "driver": "quorum",
     58         "node-name": "quorum",
     59         "read-only": true,
     60         "vote-threshold": 2,
     61         "rewrite-corrupted": true,
     62         "children": [ "file1", "file2", "file3" ]
     63     } -device virtio-scsi,id=scsi -device scsi-hd,id=quorum-drive,bus=scsi.0,drive=quorum
     64 QMP_VERSION
     65 {"return": {}}
     66 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "QUORUM_REPORT_BAD", "data": {"node-name": "file2", "sectors-count": 20480, "sector-num": 0, "type": "read"}}
     67 read 10485760/10485760 bytes at offset 0
     68 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     69 {"return": ""}
     70 {"return": {}}
     71 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
     72 
     73 -- checking that the image has been corrected --
     74 read 10485760/10485760 bytes at offset 0
     75 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     76 
     77 == breaking quorum ==
     78 wrote 10485760/10485760 bytes at offset 0
     79 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     80 wrote 10485760/10485760 bytes at offset 0
     81 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     82 
     83 == checking that quorum is broken ==
     84 read failed: Input/output error
     85 
     86 == checking the blkverify mode with broken content ==
     87 quorum: offset=0 bytes=10485760 contents mismatch at offset 0
     88 
     89 == writing the same data to both files ==
     90 wrote 10485760/10485760 bytes at offset 0
     91 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     92 wrote 10485760/10485760 bytes at offset 0
     93 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     94 
     95 == checking the blkverify mode with valid content ==
     96 read 10485760/10485760 bytes at offset 0
     97 10 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
     98 
     99 == checking the blkverify mode with invalid settings ==
    100 qemu-io: can't open: blkverify=on can only be set if there are exactly two files and vote-threshold is 2
    101 
    102 == dynamically adding a child to a quorum ==
    103 Testing:
    104 QMP_VERSION
    105 {"return": {}}
    106 {"return": {}}
    107 {"return": {}}
    108 {"return": {}}
    109 {"return": {}}
    110 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
    111 
    112 Testing:
    113 QMP_VERSION
    114 {"return": {}}
    115 {"return": {}}
    116 {"return": {}}
    117 {"error": {"class": "GenericError", "desc": "Cannot add a child to a quorum in blkverify mode"}}
    118 {"return": {}}
    119 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
    120 
    121 
    122 == dynamically removing a child from a quorum ==
    123 Testing:
    124 QMP_VERSION
    125 {"return": {}}
    126 {"return": {}}
    127 {"return": {}}
    128 {"return": {}}
    129 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
    130 
    131 Testing:
    132 QMP_VERSION
    133 {"return": {}}
    134 {"return": {}}
    135 {"error": {"class": "GenericError", "desc": "The number of children cannot be lower than the vote threshold 2"}}
    136 {"return": {}}
    137 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
    138 
    139 Testing:
    140 QMP_VERSION
    141 {"return": {}}
    142 {"error": {"class": "GenericError", "desc": "blkverify=on can only be set if there are exactly two files and vote-threshold is 2"}}
    143 {"error": {"class": "GenericError", "desc": "Cannot find device='drive0-quorum' nor node-name='drive0-quorum'"}}
    144 {"return": {}}
    145 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
    146 
    147 Testing:
    148 QMP_VERSION
    149 {"return": {}}
    150 {"return": {}}
    151 {"error": {"class": "GenericError", "desc": "The number of children cannot be lower than the vote threshold 2"}}
    152 {"return": {}}
    153 {"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
    154 
    155 *** done