Stefan Berger <stef...@linux.ibm.com> writes:

> On 10/15/24 3:57 PM, Fabiano Rosas wrote:
>> Stefan Berger <stef...@linux.ibm.com> writes:
>> 
>
>>>
>>> So this here is failing for you every time?
>>>
>>> QTEST_QEMU_BINARY=build/qemu-system-aarch64
>>> ./build/tests/qtest/tpm-tis-device-swtpm-test
>> 
>> Sorry, I was unclear. No, that runs for about 30 iterations before it
>> fails. I just ran each of these in a terminal window:
>> 
>> $ for i in $(seq 1 999); do echo "$i =============";  
>> QTEST_QEMU_BINARY=./qemu-system-aarch64 
>> ./tests/qtest/tpm-tis-device-swtpm-test || break ; done
>
> On my Fedora 40 host this command line here alone has been running for 
> 250 loop iterations now and is still continuing.
>
>> $ make -j$(nproc) check
>
> So this needs to be run in parallel to the above command line to cause 
> the failure?
>

Yes, I've been using that method to reproduce live migration race
conditions as well. It's quite effective.

If you don't think you'll be able to find the root cause due to the
unreproducibility on your side, maybe we could at least add an assert
that bcount is not larger than rsp_size. I think that would at least
give an explicit error instead of a buffer overflow.

I can also try to dig deeper into this when I get some time. At the
moment I know nothing about the tpm device emulation.

Reply via email to