[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v5 09/12] tests/acceptance: Don't test reboot on cubieboard
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH v5 09/12] tests/acceptance: Don't test reboot on cubieboard |
Date: |
Mon, 13 Jul 2020 17:15:44 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 |
On 7/13/20 5:12 PM, John Snow wrote:
>
>
> On 7/13/20 5:56 AM, Philippe Mathieu-Daudé wrote:
>> On 7/10/20 7:06 AM, John Snow wrote:
>>> cubieboard does not have a functioning reboot, it halts and QEMU does
>>> not exit.
>>>
>>> vm.shutdown() is modified in a forthcoming patch that makes it less tolerant
>>> of race conditions on shutdown; tests should consciously decide to WAIT
>>> or to SHUTDOWN qemu.
>>>
>>> So long as this test is attempting to reboot, the correct choice would
>>> be to WAIT for the VM to exit. However, since that's broken, we should
>>> SHUTDOWN instead.
>>>
>>> SHUTDOWN is indeed what already happens when the test performs teardown,
>>> however, if anyone fixes cubieboard reboot in the future, this test will
>>> develop a new race condition that might be hard to debug.
>>>
>>> Therefore: remove the reboot test and make it obvious that the VM is
>>> still running when the test concludes, where the test teardown will do
>>> the right thing.
>>>
>>> Signed-off-by: John Snow <jsnow@redhat.com>
>>> ---
>>> tests/acceptance/boot_linux_console.py | 8 ++------
>>> 1 file changed, 2 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/tests/acceptance/boot_linux_console.py
>>> b/tests/acceptance/boot_linux_console.py
>>> index 5867ef760c..8b8b828bc5 100644
>>> --- a/tests/acceptance/boot_linux_console.py
>>> +++ b/tests/acceptance/boot_linux_console.py
>>> @@ -508,9 +508,7 @@ def test_arm_cubieboard_initrd(self):
>>> 'Allwinner sun4i/sun5i')
>>> exec_command_and_wait_for_pattern(self, 'cat /proc/iomem',
>>> 'system-control@1c00000')
>>> - exec_command_and_wait_for_pattern(self, 'reboot',
>>> - 'reboot: Restarting
>>> system')
>>> - # NB: Do not issue vm.wait() here, cubieboard's reboot does not
>>> exit!
>>> + # cubieboard's reboot is not functioning; omit reboot test.
>>>
>>> def test_arm_cubieboard_sata(self):
>>> """
>>> @@ -553,9 +551,7 @@ def test_arm_cubieboard_sata(self):
>>> 'Allwinner sun4i/sun5i')
>>> exec_command_and_wait_for_pattern(self, 'cat /proc/partitions',
>>> 'sda')
>>> - exec_command_and_wait_for_pattern(self, 'reboot',
>>> - 'reboot: Restarting
>>> system')
>>> - # NB: Do not issue vm.wait() here, cubieboard's reboot does not
>>> exit!
>>> + # cubieboard's reboot is not functioning; omit reboot test.
>>>
>>> def test_arm_orangepi(self):
>>> """
>>>
>>
>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>>
>> Note, if I do the pull request, I might reorder this one before the
>> previous one "tests/acceptance: wait() instead of shutdown() where
>> appropriate".
>>
>
> you could -- in practice it didn't seem to matter. I tested both with
> and without this patch.
>
> I was just trying to isolate each intentional semantic change as its own
> commit so it could be observed/understood/debated.
As both patches are correct, there is no need to debate IMO :)
I'm fine either way. The simpler the easier, and here the simpler
is to take your series as it.
- Re: [PATCH v5 06/12] python/machine.py: Add a configurable timeout to shutdown(), (continued)
- [PATCH v5 07/12] python/machine.py: Make wait() call shutdown(), John Snow, 2020/07/10
- [PATCH v5 08/12] tests/acceptance: wait() instead of shutdown() where appropriate, John Snow, 2020/07/10
- [PATCH v5 09/12] tests/acceptance: Don't test reboot on cubieboard, John Snow, 2020/07/10
- [PATCH v5 10/12] python/machine.py: split shutdown into hard and soft flavors, John Snow, 2020/07/10
- [PATCH v5 12/12] python/machine.py: change default wait timeout to 3 seconds, John Snow, 2020/07/10