lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5703a55a-95ab-44ee-a070-2bca6e9e23bc@collabora.com>
Date: Wed, 7 Aug 2024 11:33:58 +0500
From: Muhammad Usama Anjum <Usama.Anjum@...labora.com>
To: Paolo Bonzini <pbonzini@...hat.com>
Cc: Usama.Anjum@...labora.com, kernel@...labora.com, kvm@...r.kernel.org,
 linux-kselftest@...r.kernel.org, linux-kernel@...r.kernel.org,
 Shuah Khan <shuah@...nel.org>, Shuah Khan <skhan@...uxfoundation.org>
Subject: Re: [PATCH] selftests: kvm: fix mkdir error when building for
 non-supported arch

On 8/7/24 11:08 AM, Muhammad Usama Anjum wrote:
> On 8/6/24 9:00 PM, Shuah Khan wrote:
>> On 8/6/24 06:10, Muhammad Usama Anjum wrote:
>>> The mkdir generates an error when kvm suite is build for non-supported
>>
>> built
>> unsupported
>>
>>> architecture such as arm. Fix it by ignoring the error from mkdir.
>>>
>>> mkdir: missing operand
>>> Try 'mkdir --help' for more information.
>>
>> Simply suppressing the message isn't a good fix. Can you investigate
>> a bit more on why mkdir is failing and the architectures it is failing
>> on?
>>
>> This change simply suppresses the error message and continues - Should
>> this error end the build process or not run mkdir to begin with by
>> checking why $(sort $(dir $(TEST_GEN_PROGS)))) results in an empty
>> string?
> The tests are specified on per architecture basis. As KVM isn't supported on arm, there are no tests in TEST_GEN_PROGS and it is empty. While lib.mk infrastructure has support to ignore and not build anything in such cases, the Makefile's behaviour isn't robust enough.
> 
> I think the better fix would be to check if TEST_GEN_PROGS isn't empty and then call mkdir. I'll reiterate and send the fix.

Waiting on Paolo's response before sending the following fix. Maybe he
has better idea here.
--- a/tools/testing/selftests/kvm/Makefile
+++ b/tools/testing/selftests/kvm/Makefile
@@ -317,7 +317,9 @@ $(LIBKVM_S_OBJ): $(OUTPUT)/%.o: %.S $(GEN_HDRS)
 $(LIBKVM_STRING_OBJ): $(OUTPUT)/%.o: %.c
 	$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c -ffreestanding $< -o $@

-$(shell mkdir -p $(sort $(dir $(TEST_GEN_PROGS))))
+ifneq ($(strip $(TEST_GEN_PROGS)),)
+$(shell mkdir -p $(sort $(dir $(TEST_GEN_PROGS))))
+endif
 $(SPLIT_TEST_GEN_OBJ): $(GEN_HDRS)
 $(TEST_GEN_PROGS): $(LIBKVM_OBJS)
 $(TEST_GEN_PROGS_EXTENDED): $(LIBKVM_OBJS)


> 
>>
>>>
>>> Signed-off-by: Muhammad Usama Anjum <usama.anjum@...labora.com>
>>> ---
>>>   tools/testing/selftests/kvm/Makefile | 2 +-
>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/tools/testing/selftests/kvm/Makefile b/tools/testing/selftests/kvm/Makefile
>>> index 48d32c5aa3eb7..8ff46a0a8d1cd 100644
>>> --- a/tools/testing/selftests/kvm/Makefile
>>> +++ b/tools/testing/selftests/kvm/Makefile
>>> @@ -317,7 +317,7 @@ $(LIBKVM_S_OBJ): $(OUTPUT)/%.o: %.S $(GEN_HDRS)
>>>   $(LIBKVM_STRING_OBJ): $(OUTPUT)/%.o: %.c
>>>       $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c -ffreestanding $< -o $@
>>>   -$(shell mkdir -p $(sort $(dir $(TEST_GEN_PROGS))))
>>> +$(shell mkdir -p $(sort $(dir $(TEST_GEN_PROGS))) > /dev/null 2>&1)
>>>   $(SPLIT_TEST_GEN_OBJ): $(GEN_HDRS)
>>>   $(TEST_GEN_PROGS): $(LIBKVM_OBJS)
>>>   $(TEST_GEN_PROGS_EXTENDED): $(LIBKVM_OBJS)
>>
>>
>> thanks,
>> -- Shuah
> 

-- 
BR,
Muhammad Usama Anjum


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ