All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tests/functional/test_x86_64_hotplug_cpu: Fix race condition during unplug
@ 2025-01-07 11:52 Thomas Huth
  2025-01-07 11:57 ` Daniel P. Berrangé
  2025-01-07 12:50 ` Stefan Hajnoczi
  0 siblings, 2 replies; 5+ messages in thread
From: Thomas Huth @ 2025-01-07 11:52 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel
  Cc: Philippe Mathieu-Daudé, Peter Maydell, Daniel P . Berrange

When unplugging the CPU, the test tries to check for a successful
unplug by changing to the /sys/devices/system/cpu/cpu1 directory
to see whether that fails. However, the "cd" could be faster than
the unplug operation in the kernel, so there is a race condition
and the test sometimes fails here.
Fix it by trying to change the directory in a loop until the the
CPU has really been unplugged.

Reported-by: Stefan Hajnoczi <stefanha@gmail.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/functional/test_x86_64_hotplug_cpu.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tests/functional/test_x86_64_hotplug_cpu.py b/tests/functional/test_x86_64_hotplug_cpu.py
index b1d5156c72..7b9200ac2e 100755
--- a/tests/functional/test_x86_64_hotplug_cpu.py
+++ b/tests/functional/test_x86_64_hotplug_cpu.py
@@ -59,11 +59,13 @@ def test_hotplug(self):
                                           'cd /sys/devices/system/cpu/cpu1',
                                           'cpu1#')
 
+        exec_command_and_wait_for_pattern(self, 'cd ..', prompt)
         self.vm.cmd('device_del', id='c1')
 
         exec_command_and_wait_for_pattern(self,
-                                          'cd /sys/devices/system/cpu/cpu1',
-                                          'No such file or directory')
+                                    'while cd /sys/devices/system/cpu/cpu1 ;'
+                                    ' do sleep 0.2 ; done',
+                                    'No such file or directory')
 
 if __name__ == '__main__':
     LinuxKernelTest.main()
-- 
2.47.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-01-07 12:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-07 11:52 [PATCH] tests/functional/test_x86_64_hotplug_cpu: Fix race condition during unplug Thomas Huth
2025-01-07 11:57 ` Daniel P. Berrangé
2025-01-07 12:03   ` Thomas Huth
2025-01-07 12:42     ` Daniel P. Berrangé
2025-01-07 12:50 ` Stefan Hajnoczi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.