tests: boot_sector_test(): make it multi-shot
if the function is called the 2nd time within the same qtest session, it will prematurely return before boot sector is executed due to remaining signature. Follow up patch will add VM reboot to a test case and will call boot_sector_test() again within the same qtest env, which may lead to above issue. To fix it make sure signature in VM RAM is no more before exiting boot_sector_test(), so next time it's called it will wait boot sector is completed again. Signed-off-by: Igor Mammedov <imammedo@redhat.com> Message-Id: <20230112140312.3096331-16-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
2f447a36e7
commit
2efe88a948
@ -153,6 +153,8 @@ void boot_sector_test(QTestState *qts)
|
|||||||
signature_high = qtest_readb(qts, SIGNATURE_ADDR + 1);
|
signature_high = qtest_readb(qts, SIGNATURE_ADDR + 1);
|
||||||
signature = (signature_high << 8) | signature_low;
|
signature = (signature_high << 8) | signature_low;
|
||||||
if (signature == SIGNATURE) {
|
if (signature == SIGNATURE) {
|
||||||
|
/* wipe signature */
|
||||||
|
qtest_writeb(qts, SIGNATURE_ADDR, 0x00);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user