Hi Sagi,

On 10/28/25 2:20 PM, Sagi Shahar wrote:
> diff --git a/tools/testing/selftests/kvm/lib/x86/tdx/tdx_util.c 
> b/tools/testing/selftests/kvm/lib/x86/tdx/tdx_util.c
> index 2551b3eac8f8..53cfadeff8de 100644
> --- a/tools/testing/selftests/kvm/lib/x86/tdx/tdx_util.c
> +++ b/tools/testing/selftests/kvm/lib/x86/tdx/tdx_util.c
> @@ -270,3 +270,61 @@ void vm_tdx_init_vm(struct kvm_vm *vm, uint64_t 
> attributes)
>  
>       free(init_vm);
>  }
> +
> +static void tdx_init_mem_region(struct kvm_vm *vm, void *source_pages,
> +                             uint64_t gpa, uint64_t size)
> +{
> +     uint32_t metadata = KVM_TDX_MEASURE_MEMORY_REGION;
> +     struct kvm_tdx_init_mem_region mem_region = {
> +             .source_addr = (uint64_t)source_pages,
> +             .gpa = gpa,
> +             .nr_pages = size / PAGE_SIZE,
> +     };
> +     struct kvm_vcpu *vcpu;
> +
> +     vcpu = list_first_entry_or_null(&vm->vcpus, struct kvm_vcpu, list);
> +
> +     TEST_ASSERT((mem_region.nr_pages > 0) &&
> +                 ((mem_region.nr_pages * PAGE_SIZE) == size),
> +                 "Cannot add partial pages to the guest memory.\n");
> +     TEST_ASSERT(((uint64_t)source_pages & (PAGE_SIZE - 1)) == 0,
> +                 "Source memory buffer is not page aligned\n");

IS_ALIGNED() helper may be used here?

Reinette

Reply via email to