Re: [PATCH 3/4] KVM: selftests: Enable printf format warnings for TEST_ASSERT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10.03.20 10:15, Andrew Jones wrote:
> Use the format attribute to enable printf format warnings, and
> then fix them all.

(for x86).

> 
> Signed-off-by: Andrew Jones <drjones@xxxxxxxxxx>

Acked-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>

> ---
>  tools/testing/selftests/kvm/demand_paging_test.c          | 2 +-
>  tools/testing/selftests/kvm/include/test_util.h           | 3 ++-
>  tools/testing/selftests/kvm/lib/kvm_util.c                | 8 ++++----
>  tools/testing/selftests/kvm/x86_64/evmcs_test.c           | 4 ++--
>  tools/testing/selftests/kvm/x86_64/hyperv_cpuid.c         | 2 +-
>  .../testing/selftests/kvm/x86_64/set_memory_region_test.c | 3 +--
>  tools/testing/selftests/kvm/x86_64/state_test.c           | 4 ++--
>  tools/testing/selftests/kvm/x86_64/svm_vmcall_test.c      | 3 +--
>  tools/testing/selftests/kvm/x86_64/vmx_dirty_log_test.c   | 2 +-
>  .../selftests/kvm/x86_64/vmx_set_nested_state_test.c      | 2 +-
>  10 files changed, 16 insertions(+), 17 deletions(-)
> 
> diff --git a/tools/testing/selftests/kvm/demand_paging_test.c b/tools/testing/selftests/kvm/demand_paging_test.c
> index c1e326d3ed7f..47654071544c 100644
> --- a/tools/testing/selftests/kvm/demand_paging_test.c
> +++ b/tools/testing/selftests/kvm/demand_paging_test.c
> @@ -388,7 +388,7 @@ static void run_test(enum vm_guest_mode mode, bool use_uffd,
>  	 */
>  	TEST_ASSERT(guest_num_pages < vm_get_max_gfn(vm),
>  		    "Requested more guest memory than address space allows.\n"
> -		    "    guest pages: %lx max gfn: %lx vcpus: %d wss: %lx]\n",
> +		    "    guest pages: %lx max gfn: %x vcpus: %d wss: %lx]\n",
>  		    guest_num_pages, vm_get_max_gfn(vm), vcpus,
>  		    vcpu_memory_bytes);
>  
> diff --git a/tools/testing/selftests/kvm/include/test_util.h b/tools/testing/selftests/kvm/include/test_util.h
> index c921ea719ae0..07823740227b 100644
> --- a/tools/testing/selftests/kvm/include/test_util.h
> +++ b/tools/testing/selftests/kvm/include/test_util.h
> @@ -37,7 +37,8 @@ ssize_t test_read(int fd, void *buf, size_t count);
>  int test_seq_read(const char *path, char **bufp, size_t *sizep);
>  
>  void test_assert(bool exp, const char *exp_str,
> -		 const char *file, unsigned int line, const char *fmt, ...);
> +		 const char *file, unsigned int line, const char *fmt, ...)
> +		__attribute__((format(printf, 5, 6)));
>  
>  #define TEST_ASSERT(e, fmt, ...) \
>  	test_assert((e), #e, __FILE__, __LINE__, fmt, ##__VA_ARGS__)
> diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c
> index 69a28a9211b4..b29c5d338555 100644
> --- a/tools/testing/selftests/kvm/lib/kvm_util.c
> +++ b/tools/testing/selftests/kvm/lib/kvm_util.c
> @@ -265,7 +265,7 @@ void kvm_vm_restart(struct kvm_vm *vmp, int perm)
>  		TEST_ASSERT(ret == 0, "KVM_SET_USER_MEMORY_REGION IOCTL failed,\n"
>  			    "  rc: %i errno: %i\n"
>  			    "  slot: %u flags: 0x%x\n"
> -			    "  guest_phys_addr: 0x%lx size: 0x%lx",
> +			    "  guest_phys_addr: 0x%llx size: 0x%llx",
>  			    ret, errno, region->region.slot,
>  			    region->region.flags,
>  			    region->region.guest_phys_addr,
> @@ -280,7 +280,7 @@ void kvm_vm_get_dirty_log(struct kvm_vm *vm, int slot, void *log)
>  
>  	ret = ioctl(vm->fd, KVM_GET_DIRTY_LOG, &args);
>  	TEST_ASSERT(ret == 0, "%s: KVM_GET_DIRTY_LOG failed: %s",
> -		    strerror(-ret));
> +		    __func__, strerror(-ret));
>  }
>  
>  void kvm_vm_clear_dirty_log(struct kvm_vm *vm, int slot, void *log,
> @@ -293,7 +293,7 @@ void kvm_vm_clear_dirty_log(struct kvm_vm *vm, int slot, void *log,
>  
>  	ret = ioctl(vm->fd, KVM_CLEAR_DIRTY_LOG, &args);
>  	TEST_ASSERT(ret == 0, "%s: KVM_CLEAR_DIRTY_LOG failed: %s",
> -		    strerror(-ret));
> +		    __func__, strerror(-ret));
>  }
>  
>  /*
> @@ -785,7 +785,7 @@ void vm_mem_region_move(struct kvm_vm *vm, uint32_t slot, uint64_t new_gpa)
>  	ret = ioctl(vm->fd, KVM_SET_USER_MEMORY_REGION, &region->region);
>  
>  	TEST_ASSERT(!ret, "KVM_SET_USER_MEMORY_REGION failed\n"
> -		    "ret: %i errno: %i slot: %u flags: 0x%x",
> +		    "ret: %i errno: %i slot: %u flags: 0x%lx",
>  		    ret, errno, slot, new_gpa);
>  }
>  
> diff --git a/tools/testing/selftests/kvm/x86_64/evmcs_test.c b/tools/testing/selftests/kvm/x86_64/evmcs_test.c
> index 185226c39c03..464a55217085 100644
> --- a/tools/testing/selftests/kvm/x86_64/evmcs_test.c
> +++ b/tools/testing/selftests/kvm/x86_64/evmcs_test.c
> @@ -109,7 +109,7 @@ int main(int argc, char *argv[])
>  
>  		switch (get_ucall(vm, VCPU_ID, &uc)) {
>  		case UCALL_ABORT:
> -			TEST_ASSERT(false, "%s at %s:%d", (const char *)uc.args[0],
> +			TEST_ASSERT(false, "%s at %s:%ld", (const char *)uc.args[0],
>  				    __FILE__, uc.args[1]);
>  			/* NOT REACHED */
>  		case UCALL_SYNC:
> @@ -122,7 +122,7 @@ int main(int argc, char *argv[])
>  
>  		/* UCALL_SYNC is handled here.  */
>  		TEST_ASSERT(!strcmp((const char *)uc.args[0], "hello") &&
> -			    uc.args[1] == stage, "Unexpected register values vmexit #%lx, got %lx",
> +			    uc.args[1] == stage, "Stage %d: Unexpected register values vmexit, got %lx",
>  			    stage, (ulong)uc.args[1]);
>  
>  		state = vcpu_save_state(vm, VCPU_ID);
> diff --git a/tools/testing/selftests/kvm/x86_64/hyperv_cpuid.c b/tools/testing/selftests/kvm/x86_64/hyperv_cpuid.c
> index 443a2b54645b..3edf3b517f9f 100644
> --- a/tools/testing/selftests/kvm/x86_64/hyperv_cpuid.c
> +++ b/tools/testing/selftests/kvm/x86_64/hyperv_cpuid.c
> @@ -66,7 +66,7 @@ static void test_hv_cpuid(struct kvm_cpuid2 *hv_cpuid_entries,
>  
>  		TEST_ASSERT((entry->function >= 0x40000000) &&
>  			    (entry->function <= 0x4000000A),
> -			    "function %lx is our of supported range",
> +			    "function %x is our of supported range",
>  			    entry->function);
>  
>  		TEST_ASSERT(entry->index == 0,
> diff --git a/tools/testing/selftests/kvm/x86_64/set_memory_region_test.c b/tools/testing/selftests/kvm/x86_64/set_memory_region_test.c
> index 125aeab59ab6..f2efaa576794 100644
> --- a/tools/testing/selftests/kvm/x86_64/set_memory_region_test.c
> +++ b/tools/testing/selftests/kvm/x86_64/set_memory_region_test.c
> @@ -61,8 +61,7 @@ static void *vcpu_worker(void *data)
>  		    "Unexpected exit reason = %d", run->exit_reason);
>  
>  	cmd = get_ucall(vm, VCPU_ID, &uc);
> -	TEST_ASSERT(cmd == UCALL_DONE, "Unexpected val in guest = %llu",
> -		    uc.args[0]);
> +	TEST_ASSERT(cmd == UCALL_DONE, "Unexpected val in guest = %lu", uc.args[0]);
>  	return NULL;
>  }
>  
> diff --git a/tools/testing/selftests/kvm/x86_64/state_test.c b/tools/testing/selftests/kvm/x86_64/state_test.c
> index 164774206170..a4dc1ee59659 100644
> --- a/tools/testing/selftests/kvm/x86_64/state_test.c
> +++ b/tools/testing/selftests/kvm/x86_64/state_test.c
> @@ -152,7 +152,7 @@ int main(int argc, char *argv[])
>  
>  		switch (get_ucall(vm, VCPU_ID, &uc)) {
>  		case UCALL_ABORT:
> -			TEST_ASSERT(false, "%s at %s:%d", (const char *)uc.args[0],
> +			TEST_ASSERT(false, "%s at %s:%ld", (const char *)uc.args[0],
>  				    __FILE__, uc.args[1]);
>  			/* NOT REACHED */
>  		case UCALL_SYNC:
> @@ -165,7 +165,7 @@ int main(int argc, char *argv[])
>  
>  		/* UCALL_SYNC is handled here.  */
>  		TEST_ASSERT(!strcmp((const char *)uc.args[0], "hello") &&
> -			    uc.args[1] == stage, "Unexpected register values vmexit #%lx, got %lx",
> +			    uc.args[1] == stage, "Stage %d: Unexpected register values vmexit, got %lx",
>  			    stage, (ulong)uc.args[1]);
>  
>  		state = vcpu_save_state(vm, VCPU_ID);
> diff --git a/tools/testing/selftests/kvm/x86_64/svm_vmcall_test.c b/tools/testing/selftests/kvm/x86_64/svm_vmcall_test.c
> index e280f68f6365..8cd841ff6305 100644
> --- a/tools/testing/selftests/kvm/x86_64/svm_vmcall_test.c
> +++ b/tools/testing/selftests/kvm/x86_64/svm_vmcall_test.c
> @@ -69,8 +69,7 @@ int main(int argc, char *argv[])
>  		case UCALL_DONE:
>  			goto done;
>  		default:
> -			TEST_ASSERT(false,
> -				    "Unknown ucall 0x%x.", uc.cmd);
> +			TEST_ASSERT(false, "Unknown ucall 0x%lx.", uc.cmd);
>  		}
>  	}
>  done:
> diff --git a/tools/testing/selftests/kvm/x86_64/vmx_dirty_log_test.c b/tools/testing/selftests/kvm/x86_64/vmx_dirty_log_test.c
> index fe0734d9ef75..d9ca948d0b72 100644
> --- a/tools/testing/selftests/kvm/x86_64/vmx_dirty_log_test.c
> +++ b/tools/testing/selftests/kvm/x86_64/vmx_dirty_log_test.c
> @@ -126,7 +126,7 @@ int main(int argc, char *argv[])
>  
>  		switch (get_ucall(vm, VCPU_ID, &uc)) {
>  		case UCALL_ABORT:
> -			TEST_ASSERT(false, "%s at %s:%d", (const char *)uc.args[0],
> +			TEST_ASSERT(false, "%s at %s:%ld", (const char *)uc.args[0],
>  				    __FILE__, uc.args[1]);
>  			/* NOT REACHED */
>  		case UCALL_SYNC:
> diff --git a/tools/testing/selftests/kvm/x86_64/vmx_set_nested_state_test.c b/tools/testing/selftests/kvm/x86_64/vmx_set_nested_state_test.c
> index 9ef7fab39d48..7962f2fe575d 100644
> --- a/tools/testing/selftests/kvm/x86_64/vmx_set_nested_state_test.c
> +++ b/tools/testing/selftests/kvm/x86_64/vmx_set_nested_state_test.c
> @@ -212,7 +212,7 @@ void test_vmx_nested_state(struct kvm_vm *vm)
>  	test_nested_state(vm, state);
>  	vcpu_nested_state_get(vm, VCPU_ID, state);
>  	TEST_ASSERT(state->size >= sizeof(*state) && state->size <= state_sz,
> -		    "Size must be between %d and %d.  The size returned was %d.",
> +		    "Size must be between %ld and %d.  The size returned was %d.",
>  		    sizeof(*state), state_sz, state->size);
>  	TEST_ASSERT(state->hdr.vmx.vmxon_pa == -1ull, "vmxon_pa must be -1ull.");
>  	TEST_ASSERT(state->hdr.vmx.vmcs12_pa == -1ull, "vmcs_pa must be -1ull.");
> 




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux