|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] tests/vpci: fix unit tests after locking change
On Tue, Feb 27, 2024 at 09:57:43AM -0500, Stewart Hildebrand wrote:
> The recent vPCI locking broke the vPCI unit tests. Fix it to unblock CI.
>
> Fixes: 4f78438b45e2 ("vpci: use per-domain PCI lock to protect vpci
> structure")
> Reported-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> Signed-off-by: Stewart Hildebrand <stewart.hildebrand@xxxxxxx>
> ---
> tools/tests/vpci/emul.h | 9 ++++++++-
> tools/tests/vpci/main.c | 2 +-
> 2 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/tools/tests/vpci/emul.h b/tools/tests/vpci/emul.h
> index 3c2f66a18f13..da446bba86b4 100644
> --- a/tools/tests/vpci/emul.h
> +++ b/tools/tests/vpci/emul.h
> @@ -37,7 +37,10 @@
>
> #include "list.h"
>
> +typedef bool rwlock_t;
> +
> struct domain {
> + rwlock_t pci_lock;
> };
>
> struct pci_dev {
> @@ -46,7 +49,7 @@ struct pci_dev {
>
> struct vcpu
> {
> - const struct domain *domain;
> + struct domain *domain;
> };
>
> extern const struct vcpu *current;
> @@ -56,6 +59,10 @@ typedef bool spinlock_t;
> #define spin_lock_init(l) (*(l) = false)
> #define spin_lock(l) (*(l) = true)
> #define spin_unlock(l) (*(l) = false)
> +#define read_lock(l) (*(l) = true)
> +#define read_unlock(l) (*(l) = false)
> +#define write_lock(l) (*(l) = true)
> +#define write_unlock(l) (*(l) = false)
I now realize the spinlock handlers are pointless to set a boolean,
and the same applies to the rwlocks, but anyway, it's not going to
affect the testing.
Acked-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
Thanks, Roger.
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |