refactor: boot order list to use list.h
The boot order list is built using the list.h helper.
The structure list_entry uses the same type to point
to the nodes of the list. The root of the list doesn't
have any data. Any other node shall be part of a vCPU
structure whose data is returned via CONTAINER_OF
structure.
The list implementation is circular. As such, root is
also the end of the list. The last node points to the
beginning(i.e. vcpu.next_boot.next is root entry).
Signed-off-by: J-Alves <joao.alves@arm.com>
Change-Id: Idbfaa293c74e71b989133d5828803c958855d25a
diff --git a/src/vm_test.cc b/src/vm_test.cc
index 40b0e60..b82aaf6 100644
--- a/src/vm_test.cc
+++ b/src/vm_test.cc
@@ -10,6 +10,7 @@
extern "C" {
#include "hf/check.h"
+#include "hf/list.h"
#include "hf/mpool.h"
#include "hf/vm.h"
}
@@ -96,8 +97,6 @@
struct_vcpu *vcpu;
std::list<struct_vm *> expected_final_order;
- EXPECT_TRUE(vcpu_get_boot_vcpu() == NULL);
-
/*
* Insertion when no call to "vcpu_update_boot" has been made yet.
* The "boot_list" is expected to be empty.
@@ -156,7 +155,7 @@
it != expected_final_order.end(); it++) {
EXPECT_TRUE(vcpu != NULL);
EXPECT_EQ((*it)->id, vcpu->vm->id);
- vcpu = vcpu->next_boot;
+ vcpu = vcpu_get_next_boot(vcpu);
}
}