[kvm-unit-tests PATCH v4 1/2] s390x: sclp: consider monoprocessor on read_info error

Pierre Morel
2023-05-30T12:53:32Z

A test would hang if an abort happens before SCLP Read SCP
Information has completed.

Signed-off-by: Pierre Morel <pmorel@linux.ibm.com>
---
lib/s390x/sclp.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/lib/s390x/sclp.c b/lib/s390x/sclp.c
index acdc8a9..34a31da 100644
--- a/lib/s390x/sclp.c
+++ b/lib/s390x/sclp.c
@@ -119,8 +119,15 @@ void sclp_read_info(void)

int sclp_get_cpu_num(void)
{
- assert(read_info);
- return read_info->entries_cpu;
+ if (read_info)
+ return read_info->entries_cpu;
+ /*
+ * If we fail here and read_info has not being set,
+ * it means we failed early and we try to abort the test.
+ * We need to return at least one CPU, and obviously we have
+ * at least one, for the smp_teardown to correctly work.
+ */
+ return 1;
}

CPUEntry *sclp_get_cpu_entries(void)
--
2.31.1