u thread failed errno=%d",
> errno);
> +
> + ret = pthread_create(&task_thread, NULL, task_worker, &is_halt_exec);
> + TEST_ASSERT(ret == 0, "pthread_create task thread failed errno=%d",
> errno);
> +
> + pthread_join(vcpu_thread, &retval);
> + TEST_ASSERT(ret == 0, "pthread_join on vcpu thread failed with
> errno=%d", ret);
> +
> + pthread_join(task_thread, &retval);
> + TEST_ASSERT(ret == 0, "pthread_join on task thread failed with
> errno=%d", ret);
> +
> + return 0;
> +}
--
BR,
Muhammad Usama Anjum
0, fred_invalid_rsp[2]);
> + asm volatile("cli");
> + /* Create a pending interrupt on current vCPU */
> + x2apic_write_reg(APIC_ICR, APIC_DEST_SELF | APIC_INT_ASSERT |
> + APIC_DM_FIXED | IRQ_VECTOR);
> + /* Return to ring 3 */
> + asm_test_fault(0);
> + x2apic_write_reg(APIC_EOI, 0);
> +
> + wrmsr(MSR_IA32_FRED_STKLVLS, FRED_STKLVL(PF_VECTOR, 3));
> + wrmsr(MSR_IA32_FRED_RSP0, fred_invalid_rsp[3]);
> + /*
> + * The first NMI is just to have NMI blocked in ring 0, because
> + * fred_entry_from_kernel() deliberately clears the NMI bit in
> + * FRED stack frame.
> + */
> + x2apic_write_reg(APIC_ICR, APIC_DEST_SELF | APIC_INT_ASSERT |
> + APIC_DM_NMI | NMI_VECTOR);
> + /* The second NMI will be delivered after returning to ring 3 */
> + x2apic_write_reg(APIC_ICR, APIC_DEST_SELF | APIC_INT_ASSERT |
> + APIC_DM_NMI | NMI_VECTOR);
> + /* Return to ring 3 */
> + asm_test_fault(0);
> +
> + GUEST_DONE();
> +}
> +
> +int main(int argc, char *argv[])
> +{
> + struct kvm_vcpu *vcpu;
> + struct kvm_vm *vm;
> + struct ucall uc;
> + uint64_t expected_current_stack_level = 1;
> +
> + TEST_REQUIRE(kvm_cpu_has(X86_FEATURE_FRED));
> +
> + vm = __vm_create_with_vcpus(VM_SHAPE(VM_MODE_PXXV48_4K_USER), 1, 0,
> + guest_code, &vcpu);
> +
> + while (true) {
> + uint64_t r;
> +
> + vcpu_run(vcpu);
> +
> + r = get_ucall(vcpu, &uc);
> +
> + if (r == UCALL_DONE)
> + break;
> +
> + if (r == UCALL_SYNC) {
> + TEST_ASSERT((uc.args[1] ==
> expected_current_stack_level) &&
> + (uc.args[2] ==
> fred_invalid_rsp[expected_current_stack_level] - 1),
> + "Incorrect stack level %lx and #PF address
> %lx\n",
> + uc.args[1], uc.args[2]);
> + expected_current_stack_level++;
> + }
> + }
> +
> + kvm_vm_free(vm);
> + return 0;
> +}
--
BR,
Muhammad Usama Anjum
or migration checks")
> Signed-off-by: Tianchen Ding
Reviewed-by: Muhammad Usama Anjum
> ---
> tools/testing/selftests/cgroup/cgroup_util.c| 8 +---
> tools/testing/selftests/cgroup/cgroup_util.h| 2 +-
> tools/testing/selftests/cgroup/test_core.c
On 4/1/24 10:28 AM, Manali Shukla wrote:
> Hi Muhammad Usama Anjum,
>
> Thank you for reviewing my patch.
>
> On 3/30/2024 1:43 AM, Muhammad Usama Anjum wrote:
>> On 3/27/24 10:42 AM, Manali Shukla wrote:
>>> By default, HLT instruction executed by guest is intercep
On 3/30/24 1:02 AM, Deepak Gupta wrote:
> On Fri, Mar 29, 2024 at 12:50 PM Muhammad Usama Anjum
> wrote:
>>
>> On 3/29/24 9:44 AM, Deepak Gupta wrote:
>>> Adds kselftest for RISC-V control flow integrity implementation for user
>>> mode. There is not a lot goi
On 3/30/24 1:33 AM, Edward Liaw wrote:
> On Fri, Mar 29, 2024 at 12:32 PM Muhammad Usama Anjum
> wrote:
>>
>> On 3/29/24 10:42 PM, Edward Liaw wrote:
>>> Got a compilation error for ffsl after 91b80cc5b39f ("selftests: mm: fix
>>> map_hugetlb failure on 6
Trying the BPF CI job again by changing test_dev_cgroup to
serial_test_dev_cgroup. I'm not sure if it'll trigger the job or not. Is
there any other way to trigger a CI job for a test patch?
Signed-off-by: Muhammad Usama Anjum
---
.../selftests/bpf/prog_tests/dev_cgroup.
ned-off-by: Muhammad Usama Anjum
---
Changes since v2:
- Replace test_dev_cgroup with serial_test_dev_cgroup as there is
probability that the test is racing against another cgroup test
- Minor changes to the commit message above
I've tested the patch with vmtest.sh on bpf-next/for-next and
Yonghong Song,
Thank you so much for replying. I was missing how to run pipeline manually.
Thanks a ton.
On 4/1/24 11:53 PM, Yonghong Song wrote:
>
> On 4/1/24 5:34 AM, Muhammad Usama Anjum wrote:
>> Move test_dev_cgroup.c to prog_tests/dev_cgroup.c to be able to run it
>&g
On 4/3/24 7:36 AM, Yonghong Song wrote:
>
> On 4/2/24 8:16 AM, Muhammad Usama Anjum wrote:
>> Yonghong Song,
>>
>> Thank you so much for replying. I was missing how to run pipeline manually.
>> Thanks a ton.
>>
>> On 4/1/24 11:53 PM, Yonghong Song wr
On 3/28/24 1:13 AM, Muhammad Usama Anjum wrote:
> On 3/27/24 11:20 PM, Jason Gunthorpe wrote:
>> On Wed, Mar 27, 2024 at 06:09:37PM +, Joao Martins wrote:
>>> On 27/03/2024 17:49, Muhammad Usama Anjum wrote:
>>>> On 3/27/24 7:59 PM, Joao Martins wrote:
&g
Soft reminder
On 3/27/24 4:53 PM, Muhammad Usama Anjum wrote:
> Conform the layout, informational and status messages to TAP. No
> functional change is intended other than the layout of output messages.
> Improve the TAP messages as well.
>
> Reviewed-by: T.J. Mercier
> Signe
Soft reminder
On 3/25/24 12:07 PM, Muhammad Usama Anjum wrote:
> Soft reminder
>
> On 3/7/24 11:37 PM, Muhammad Usama Anjum wrote:
>> Conform the layout, informational and status messages to TAP. No
>> functional change is intended other than the layout of output messages
The comment on top of the file is used by many developers to glance over
all the available functions. Add the recently added ksft_perror() to it.
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftests/kselftest.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/testing
't printed. The ksft_exit_fail_perror() provides a convenient way to
always print errno when its used.
Muhammad Usama Anjum (2):
selftests: add ksft_exit_fail_perror()
selftests: exec: Use new ksft_exit_fail_perror() helper
tools/testing/selftests/exec/recursion-depth.c | 10 +-
be used instead of ksft_exit_fail_msg() as it prints
errno.
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftests/kselftest.h | 14 ++
1 file changed, 14 insertions(+)
diff --git a/tools/testing/selftests/kselftest.h
b/tools/testing/selftests/kselftest.h
index
Use ksft_exit_fail_perror() to print the value of errno and its string
form. This is the first user of the ksft_exit_fail_perror() and proves
the usefulness of this API.
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftests/exec/recursion-depth.c | 10 +-
1 file changed, 5
.
Remove Error/Failed prefixes from all usages as well.
Muhammad Usama Anjum (2):
selftests: Replace "Bail out" with "Error"
selftests: Remove Error/Failed prefix from ksft_exit_fail*() usages
tools/testing/selftests/exec/load_address.c | 8 +-
.../testing/selftests/exec/recur
"Bail out! " is not descriptive. It rather should be: "Failed: " and
then that added prefix doesn't need to be added everywhere. Usually in
the logs, we are searching for "Failed" or "Error" instead of "Bail
out".
Suggested-by: Kees Cook
Remove Error/Failed prefix from ksft_exit_fail*() usages as prefix is
already present in the ksft_exit_fail*().
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftests/exec/load_address.c | 8 +-
.../testing/selftests/exec/recursion-depth.c | 10 +-
.../selftests/mm
Hi Tim,
On 4/6/24 12:36 AM, Bird, Tim wrote:
> Sorry I didn't catch this on the original submission.
>
>> -Original Message-
>> From: Shuah Khan
>>
>> On 4/5/24 07: 17, Muhammad Usama Anjum wrote: > "Bail out! " is not
>> descri
d without the
> "-a" option.
>
> Signed-off-by: Oliver Crumrine
Acked-by: Muhammad Usama Anjum
> ---
> .../selftests/net/io_uring_zerocopy_tx.c | 38 +--
> .../selftests/net/io_uring_zerocopy_tx.sh | 7 +++-
> 2 files changed,
On 4/6/24 10:36 PM, Vincent Donnefort wrote:
> This test maps a ring-buffer and validate the meta-page after reset and
> after emitting few events.
>
> Cc: Shuah Khan
> Cc: Shuah Khan
> Cc: linux-kselftest@vger.kernel.org
> Signed-off-by: Vincent Donnefort
Acked-by:
uot;);
> + return -1;
> + }
> +
> + printf("[OK]\n");
ksft_test_result or _pass variant as needed?
> + return 0;
> +}
> +
> int main(int argc, char **argv)
> {
> printf("Testing posix timers. False negative may happen on CPU
> execution \n");
> @@ -217,5 +291,8 @@ int main(int argc, char **argv)
> if (check_timer_create(CLOCK_PROCESS_CPUTIME_ID) < 0)
> return ksft_exit_fail();
>
> + if (check_timer_distribution() < 0)
> + return ksft_exit_fail();
> +
> return ksft_exit_pass();
> }
--
BR,
Muhammad Usama Anjum
rflow and packet loss on the destination.
> Limit of 128 segments is good for any practical purpose,
> with minimal meaningful mss of 536 the maximal UDP packet will
> be divided to ~120 segments.
>
> Signed-off-by: Yuri Benditovich
Reviewed-by: Muhammad Usama Anjum ---
> in
t anything we log have a '#' at the start of the line so
> we can improve things by washing the output through a simple read loop.
> This will help automated parsers when verbose mode is enabled.
>
> Signed-off-by: Mark Brown
Reviewed-by: Muhammad Usama Anjum
> ---
>
much
> of an issue.
>
> Signed-off-by: Mark Brown
Reviewed-by: Muhammad Usama Anjum
> ---
> tools/testing/selftests/ftrace/ftracetest-ktap | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/ftrace/ftracetest-ktap
rnel headers installed and use them.
> +
> +# Including KSFT lib.mk here will also mangle the TEST_GEN_PROGS list
> +# to account for any OUTPUT target-dirs optionally provided by
> +# the toplevel makefile
> +include ../../lib.mk
> +
> +$(TEST_GEN_PROGS): $(PROGS)
> + cp $(PROGS) $(OUTPUT)/
> +
> +# Common test-unit targets to build common-layout test-cases executables
> +# Needs secondary expansion to properly include the testcase c-file in
> pre-reqs
> +COMMON_SOURCES := test_signals.c test_signals_utils.c
> +COMMON_HEADERS := test_signals.h test_signals_utils.h
> +
> +.SECONDEXPANSION:
> +$(PROGS): $$@.c ${COMMON_SOURCES} ${COMMON_HEADERS}
> + $(CC) $(CFLAGS) ${@}.c ${COMMON_SOURCES} -o $@
--
BR,
Muhammad Usama Anjum
}
> +
> + if ((hyphen_loc - line > 8) ||
> + (whitespace_loc - hyphen_loc) > 9) {
> + ksft_test_result_fail("Memory map more than 32 bits\n");
> + ksft_finished();
> + }
> + }
> +
> + for (int i = 0; i < chunks; ++i)
> + munmap(ptr[i], MAP_CHUNK_SIZE);
> +
> + ksft_test_result_pass("Test\n");
> + ksft_finished();
> +}
--
BR,
Muhammad Usama Anjum
testcases/mangle_cpsr_aif_bits.c
> @@ -0,0 +1,33 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2024 ARM Limited
> + *
> + * Try to mangle the ucontext from inside a signal handler, mangling the
> + * AIF bits in an illegal manner: this attempt must be spotted by Kernel
> + * and the test case is expected to be terminated via SEGV.
> + *
> + */
> +
> +#include "test_signals_utils.h"
> +
> +static int mangle_invalid_cpsr_run(struct tdescr *td, siginfo_t *si,
> +ucontext_t *uc)
> +{
> +
> + /*
> + * This config should trigger a SIGSEGV by Kernel when it checks
> + * the sigframe consistency in valid_user_regs() routine.
> + */
> + uc->uc_mcontext.arm_cpsr |= PSR_A_BIT | PSR_I_BIT | PSR_F_BIT;
> +
> + return 1;
> +}
> +
> +struct tdescr tde = {
> + .sanity_disabled = true,
> + .name = "MANGLE_CPSR_INVALID_AIF_BITS",
> + .descr = "Mangling uc_mcontext with INVALID AIF_BITS",
> + .sig_trig = SIGUSR1,
> + .sig_ok = SIGSEGV,
> + .run = mangle_invalid_cpsr_run,
> +};
> diff --git
> a/tools/testing/selftests/arm/signal/testcases/mangle_cpsr_invalid_compat_toggle.c
>
> b/tools/testing/selftests/arm/signal/testcases/mangle_cpsr_invalid_compat_toggle.c
> new file mode 100644
> index ..cb7eb8aec7f2
> --- /dev/null
> +++
> b/tools/testing/selftests/arm/signal/testcases/mangle_cpsr_invalid_compat_toggle.c
> @@ -0,0 +1,29 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2024 ARM Limited
> + *
> + * Try to mangle the ucontext from inside a signal handler, toggling
> + * the execution state bit: this attempt must be spotted by Kernel and
> + * the test case is expected to be terminated via SEGV.
> + */
> +
> +#include "test_signals_utils.h"
> +
> +static int mangle_invalid_cpsr_run(struct tdescr *td, siginfo_t *si,
> +ucontext_t *uc)
> +{
> +
> + /* This config should trigger a SIGSEGV by Kernel */
> + uc->uc_mcontext.arm_cpsr ^= MODE32_BIT;
> +
> + return 1;
> +}
> +
> +struct tdescr tde = {
> + .sanity_disabled = true,
> + .name = "MANGLE_CPSR_INVALID_STATE_TOGGLE",
> + .descr = "Mangling uc_mcontext with INVALID STATE_TOGGLE",
> + .sig_trig = SIGUSR1,
> + .sig_ok = SIGSEGV,
> + .run = mangle_invalid_cpsr_run,
> +};
--
BR,
Muhammad Usama Anjum
annot open /proc/self/exe\n");
> + exit(EXIT_FAILURE);
Instead of failing and exiting multiple times here, use ksft_print_msg,
return error or -1 from here and fail the test case in ksft_test_result().
> +}
> +
> +int main(int argc, char *argv[])
> +{
> + const char *file_name;
> +
> + ksft_print_header();
> + ksft_set_plan(1);
> +
> + file_name = "/proc/self/exe";
> + ksft_test_result(read_elf_header(file_name) == 0, "ELF is 32 bit\n");
> + ksft_finished();
> +}
--
BR,
Muhammad Usama Anjum
already been made compliant.
Thanks
>
> Oleg.
>
> On 04/07, Muhammad Usama Anjum wrote:
>>
>> On 3/16/23 5:30 PM, Marco Elver wrote:
>>> From: Dmitry Vyukov
>>>
>>> Test that POSIX timers using CLOCK_PROCESS_CPUTIME_ID eventually deliver
&
:
> + * pids is listed in cgroup.controllers
> + */
> + if (cg_read_strstr(root, "cgroup.controllers", "pids"))
> + ksft_exit_skip("pids controller isn't available\n");
> +
> + if (cg_read_strstr(root, "cgroup.subtree_control", "pids"))
> + if (cg_write(root, "cgroup.subtree_control", "+pids"))
> + ksft_exit_skip("Failed to set pids controller\n");
> +
> + for (i = 0; i < ARRAY_SIZE(tests); i++) {
> + switch (tests[i].fn(root)) {
> + case KSFT_PASS:
> + ksft_test_result_pass("%s\n", tests[i].name);
> + break;
> + case KSFT_SKIP:
> + ksft_test_result_skip("%s\n", tests[i].name);
> + break;
> + default:
> + ret = EXIT_FAILURE;
> + ksft_test_result_fail("%s\n", tests[i].name);
> + break;
Use ksft_test_result_report() instead of swith-case here.
> + }
> + }
> +
> + return ret;
> +}
--
BR,
Muhammad Usama Anjum
On 4/8/24 4:29 PM, Michal Koutný wrote:
> On Sun, Apr 07, 2024 at 02:37:44AM +0500, Muhammad Usama Anjum
> wrote:
>> The
>> ksft_print_header();
>> ksft_set_plan(total_number_of_tests);
>> are missing. Please use all of the ksft APIs to make the te
On 4/8/24 5:01 PM, Michal Koutný wrote:
> On Mon, Apr 08, 2024 at 04:53:11PM +0500, Muhammad Usama Anjum
> wrote:
>> ksft_test_result_report(tests[i].fn(root), tests[i].name)
>
> $ git grep ksft_test_result_report v6.9-rc3 --
> (empty result)
>
> I can't f
On 4/9/24 5:12 AM, Waiman Long wrote:
>
> On 4/8/24 08:04, Muhammad Usama Anjum wrote:
>> On 4/8/24 5:01 PM, Michal Koutný wrote:
>>> On Mon, Apr 08, 2024 at 04:53:11PM +0500, Muhammad Usama Anjum
>>> wrote:
>>>> ksft_test_result_report(tests[
t;
> Cc: Thomas Gleixner
> Cc: Stephen Boyd
> Cc: Anna-Maria Behnsen
> Cc: Frederic Weisbecker
> Cc: Shuah Khan
> Cc: Nathan Chancellor
> Cc: Nick Desaulniers
> Cc: Lee Jones
> Cc: Muhammad Usama Anjum
> Cc: linux-kselftest@vger.kernel.org
> Reported-by: L
ully !
> Totals: pass:4 fail:0 xfail:0 xpass:0 skip:0 error:0
>
> V3:
> - Fixed the build error when it is compiled with _FORTIFY_SOURCE.
>
> V2:
> - Addressed all review commets from Muhammad Usama Anjum
> https://lore.kernel.org/all/20240604132801.23377-1-donet...@l
P_HUGE_SHIFT)
> -#define MAP_HUGE_1GB(30 << MAP_HUGE_SHIFT)
> -#define MAP_HUGE_SHIFT 26
> -#define MAP_HUGE_MASK 0x3f
Totally makes sense.
Reviewed-by: Muhammad Usama Anjum
> #if !defined(MAP_HUGETLB)
> #define MAP_HUGETLB 0x4
> #endif
--
BR,
Muhammad Usama Anjum
to prevent
> redefinition warnings on Android bionic.
LGTM
Reviewed-by: Muhammad Usama Anjum
>
> Signed-off-by: Edward Liaw
> ---
> tools/testing/selftests/mm/thuge-gen.c | 8
> 1 file changed, 8 insertions(+)
>
> diff --git a/tools/testing/selftests/mm/thuge-g
On 6/7/24 2:44 PM, Muhammad Usama Anjum wrote:
> On 6/6/24 3:36 AM, Edward Liaw wrote:
>> thuge-gen defines MAP_HUGE_* macros that are provided by linux/mman.h
>> since 4.15. Removes the macros and includes linux/mman.h instead.
>>
>> Signed-off-by: Edward Liaw
>>
add this test in selftests/mm.
> could you please help me to get the correct vm_test.sh to add this?
Here is the file path: tools/testing/selftests/mm/run_vmtests.sh
--
BR,
Muhammad Usama Anjum
Adding Borislav, Dave and x86 mailing list:
Please review the series.
On 6/8/24 1:52 AM, Shuah Khan wrote:
> On 5/27/24 23:04, Muhammad Usama Anjum wrote:
>> Kind reminder
>>
>> On 4/14/24 6:18 PM, Muhammad Usama Anjum wrote:
>>> In this series, 4 te
rrect maintainers aren't found by get_maintainer.pl script. Fix
this by adding entry to MAINTAINERS file.
[1]
https://lore.kernel.org/all/90dc0dfc-4c67-4ea1-b705-0585d6e2e...@linuxfoundation.org
Signed-off-by: Muhammad Usama Anjum
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
di
and after these
patches. They are working correctly and outputting TAP messaging to find
failures quikly when they happen.
---
Changes since v1:
- Update cover letter
- Update commit message of first patch
Muhammad Usama Anjum (4):
kselftests: vdso: vdso_test_clock_getres: conform test to TAP
convert and presents better maintainability.
Signed-off-by: Muhammad Usama Anjum
---
Changes since v1:
- Update commit message to include that kselftest_harness has been used
to conform to TAP and why
---
.../selftests/vDSO/vdso_test_clock_getres.c | 68 +--
1 file changed, 33
Conform the layout, informational and status messages to TAP. No
functional change is intended other than the layout of output messages.
Signed-off-by: Muhammad Usama Anjum
---
.../selftests/vDSO/vdso_test_correctness.c| 146 +-
1 file changed, 74 insertions(+), 72 deletions
Conform the layout, informational and status messages to TAP. No
functional change is intended other than the layout of output messages.
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftests/vDSO/vdso_test_getcpu.c | 16 +++-
1 file changed, 7 insertions(+), 9 deletions
Conform the layout, informational and status messages to TAP. No
functional change is intended other than the layout of output messages.
Signed-off-by: Muhammad Usama Anjum
---
.../selftests/vDSO/vdso_test_gettimeofday.c | 23 ++-
1 file changed, 12 insertions(+), 11 deletions
Although "TAP" word is being used already in documentation, but it hasn't
been defined in informative way for developers that how to write TAP
conformant tests and what are the benefits. Write a short brief about it.
Signed-off-by: Muhammad Usama Anjum
---
Documentation/dev-tool
On 6/12/24 1:27 AM, Shuah Khan wrote:
> On 6/10/24 02:32, Muhammad Usama Anjum wrote:
>> Although "TAP" word is being used already in documentation, but it hasn't
>> been defined in informative way for developers that how to write TAP
>> conformant tests and
Although "TAP" word is being used already in documentation, but it hasn't
been defined in informative way for developers that how to write TAP
conformant tests and what are the benefits. Write a short brief about it.
Signed-off-by: Muhammad Usama Anjum
---
Changes sin
On 6/12/24 1:32 AM, Shuah Khan wrote:
> On 6/9/24 23:41, Muhammad Usama Anjum wrote:
>> Conform the layout, informational and status messages to TAP. No
>> functional change is intended other than the layout of output messages.
>> Use kselftest_harness.h to conform to TAP a
On 6/12/24 1:37 AM, Shuah Khan wrote:
> On 6/9/24 23:41, Muhammad Usama Anjum wrote:
>> Conform individual tests to TAP output. One patch conform one test. With
>> this series, all vDSO tests become TAP conformant.
>>
>> First patch conform the test by using kselfte
Replace print_skip() with ksft_exit_skip() to simplify the code and
directly use the skip API provided by kselftest.h.
Signed-off-by: Muhammad Usama Anjum
---
.../testing/selftests/kvm/aarch64/vgic_init.c | 4 ++--
.../testing/selftests/kvm/demand_paging_test.c | 3 +--
tools/testing
The KSFT_FAIL, exit code must be used instead of exit(254). The 254 code
here seems like anciant relic. Its even better if we use
ksft_exit_fail_msg() which will print out "Bail out" meaning the test
exited without completing. This string is TAP protocol specific.
Signed-off-by: Muha
Hi Sean,
Thank you for replying in detail. I wasn't aware of true origin of these tests.
On 6/13/24 12:01 AM, Sean Christopherson wrote:
> On Wed, Jun 12, 2024, Muhammad Usama Anjum wrote:
>> The KSFT_FAIL, exit code must be used instead of exit(254).
>
> This needs more
On 6/21/24 9:16 AM, Taehee Yoo wrote:
> amt.sh is written in bash, not sh.
> So, shebang should be bash.
>
> Signed-off-by: Taehee Yoo
Acked-by: Muhammad Usama Anjum
> ---
> tools/testing/selftests/net/amt.sh | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
&g
+
> +#ifndef MADV_SOFT_OFFLINE
> +#define MADV_SOFT_OFFLINE 101
> +#endif
> +
> +#define PREFIX " ... "
> +#define EPREFIX " !!! "
> +
> +enum test_status {
> + TEST_PASS = 0,
> + TEST_FAILED = 1,
> + // From ${ksft_skip} in run_vmtests.sh.
> + TEST_SKIPPED = 4,
> +};
Include ../kselftest.h and use macros from there instead of redifining.
Also try to use helper functions from same header file to mark the test
pass/fail or exit the test entirely. You can look at soft-dirty.c how that
is written.
--
BR,
Muhammad Usama Anjum
cb5dd8e2c8c ("selftests: futex: Add futex compare requeue test")
> Signed-off-by: Edward Liaw
Reviewed-by: Muhammad Usama Anjum
> ---
> .../selftests/futex/functional/futex_requeue.c | 12 +---
> 1 file changed, 9 insertions(+), 3 deletions(-)
>
> dif
fails, we should better check the value
> of 'to' and close 'from' to avoid possible file leak. Improve the checking
> of 'from' additionally.
>
> Fixes: 32ae976ed3b5 ("selftests/capabilities: Add tests for capability
> evolution")
> Signed-o
y changes in selftests to avoid redefinition warnings.
>
> Suggested-by: John Hubbard
> Signed-off-by: Edward Liaw
Reviewed-by: Muhammad Usama Anjum
> ---
> tools/testing/selftests/exec/Makefile | 1 -
> tools/testing/selftests/futex/functional/Makefile | 2 +
Adding missing maintainer and reviser.
On 5/20/24 9:37 PM, Muhammad Usama Anjum wrote:
> Conform the layout, informational and status messages to TAP. No
> functional change is intended other than the layout of output messages.
> Without using TAP messages, the passed/failed/skip t
Adding more people for review
On 5/23/24 2:46 AM, Muhammad Usama Anjum wrote:
> Don't print that 88 sub-tests are going to be executed. But then skip.
> The error is printed that executed test was only 1 while 88 should have
> run:
>
> Old output:
> TAP version 13
>
Soft reminder
On 5/22/24 10:06 PM, Muhammad Usama Anjum wrote:
> Conform the layout, informational and status messages to TAP. No
> functional change is intended other than the layout of output messages.
>
> Signed-off-by: Muhammad Usama Anjum
> ---
> .../i
Adding more reviewers. Please review.
On 5/28/24 10:05 AM, Muhammad Usama Anjum wrote:
> Kind reminder
>
> On 4/26/24 3:18 PM, Muhammad Usama Anjum wrote:
>> Conform the layout, informational and status messages to TAP. No
>> functional change is intended other than the layo
Adding Jarkko
On 5/28/24 10:05 AM, Muhammad Usama Anjum wrote:
> Kind reminder
>
> On 4/26/24 2:14 PM, Muhammad Usama Anjum wrote:
>> The python unittest is being used for executing tests. TAP output
>> cannot be added in the unittest framework. The python unittest is being
Soft reminder
On 6/2/24 6:24 PM, Muhammad Usama Anjum wrote:
> Conform the layout, informational and status messages to TAP. No
> functional change is intended other than the layout of output messages.
>
> Signed-off-by: Muhammad Usama Anjum
> ---
> tools/testing/se
ards using bash explicitly. Some
interpreters have different syntax and cause issues.
Cc: Jarkko Sakkinen
Signed-off-by: Muhammad Usama Anjum
---
Changes since v1:
- CC more people which were missing earlier
---
tools/testing/selftests/tpm2/test_async.sh | 24 --
too
On 7/1/24 2:14 PM, Aleksa Sarai wrote:
> On 2024-07-01, Muhammad Usama Anjum wrote:
>> Adding more people for review
>>
>> On 5/23/24 2:46 AM, Muhammad Usama Anjum wrote:
>>> Don't print that 88 sub-tests are going to be executed. But then skip.
>>>
This is PATCH v2. I missed updating the version number in the subject.
On 7/2/24 11:55 AM, Muhammad Usama Anjum wrote:
> The python unittest is being used for executing tests. TAP output
> cannot be added in the unittest framework. The python unittest is being
> run from a script. Add t
: Muhammad Usama Anjum
---
Changes since v1:
- Use ksft_exit_fail_perror if read() returns error
- Break the infinite loop after printing index_str
---
.../intel/workload_hint/workload_hint_test.c | 103 --
1 file changed, 43 insertions(+), 60 deletions(-)
diff --git
a/tools/testing
Conform the layout, informational and status messages to TAP. No
functional change is intended other than the layout of output messages.
The test has infinite loop to read the value of status_str. Break the
loop after getting the value once and finish the test.
Signed-off-by: Muhammad Usama
Kind reminder to review
On 6/12/24 1:17 PM, Muhammad Usama Anjum wrote:
> On 6/12/24 1:32 AM, Shuah Khan wrote:
>> On 6/9/24 23:41, Muhammad Usama Anjum wrote:
>>> Conform the layout, informational and status messages to TAP. No
>>> functional change is intended othe
Kind reminder
On 6/10/24 10:28 AM, Muhammad Usama Anjum wrote:
> There are no maintainers specified for tools/testing/selftests/x86.
> Shuah has mentioned [1] that the patches should go through x86 tree or
> in special cases directly to Shuah's tree after getting ack-ed from x86
On 6/10/24 10:19 AM, Muhammad Usama Anjum wrote:
> Adding Borislav, Dave and x86 mailing list:
> Please review the series.
Kind reminder
>
> On 6/8/24 1:52 AM, Shuah Khan wrote:
>> On 5/27/24 23:04, Muhammad Usama Anjum wrote:
>>> Kind reminder
>>>
&g
On 6/29/24 1:06 AM, John Hubbard wrote:
> On 5/31/24 12:38 PM, John Hubbard wrote:
>> Hi,
>>
>> Dave Hansen, Muhammad Usama Anjum, here is the combined series that we
>> discussed yesterday [1].
>
> Hi Dave, Shuah,
>
> Are either of you planning to take thi
On 7/3/24 9:40 AM, srinivas pandruvada wrote:
> On Tue, 2024-07-02 at 15:12 +0500, Muhammad Usama Anjum wrote:
>> Conform the layout, informational and status messages to TAP. No
>> functional change is intended other than the layout of output
>> messages.
>>
> Not t
On 7/4/24 8:08 AM, John Hubbard wrote:
> On 7/2/24 3:28 AM, Muhammad Usama Anjum wrote:
>> On 6/29/24 1:06 AM, John Hubbard wrote:
>>> On 5/31/24 12:38 PM, John Hubbard wrote:
>>>> Hi,
>>>>
>>>> Dave Hansen, Muhammad Usama Anjum, here is t
ng the irqcount variable.
>
> Signed-off-by: John Hubbard
Reviewed-by: Muhammad Usama Anjum
> ---
>
> Changes since v2:
>
> 1) Rebased onto Linux 6.10-rc6+
>
> Changes since the first version:
>
> 1) Rebased onto Linux 6.10-rc1
>
> thanks,
> John Hubbard
>
r to force things by creating
> an "all:" target locally--while still including ../lib.mk.
>
> Fix all of this by including ../lib.mk at the right place, and removing
> the $(OUTPUT) prefix to the programs to be built, and removing the
> duplicate "all:" target.
>
Hi Shuah,
On 7/10/24 4:36 AM, Shuah Khan wrote:
> On 7/2/24 00:55, Muhammad Usama Anjum wrote:
>> The python unittest is being used for executing tests. TAP output
>> cannot be added in the unittest framework. The python unittest is being
>> run from a script. Add the o
The python unittest module writes all its output to stderr, even when
the run is clean. Redirect its output logs to stdout.
Cc: Jarkko Sakkinen
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftests/tpm2/test_async.sh | 2 +-
tools/testing/selftests/tpm2/test_smoke.sh | 2 +-
tools
Hi Shuah,
Thank you for replying.
On 7/10/24 4:39 AM, Shuah Khan wrote:
> On 7/2/24 04:17, Muhammad Usama Anjum wrote:
>> On 6/10/24 10:19 AM, Muhammad Usama Anjum wrote:
>>> Adding Borislav, Dave and x86 mailing list:
>>> Please review the series.
>> Kind
Hi Shuah,
Can you take the patch as is or by removing following from this patch:
- if (geteuid() != 0)
+ if (geteuid())
Thanks,
Usama
On 7/2/24 12:02 PM, Muhammad Usama Anjum wrote:
> On 7/1/24 2:14 PM, Aleksa Sarai wrote:
>> On 2024-07-01, Muhammad Usama Anjum wrote:
&
Kind reminder.
This two patch series is removing a script which was marking test pass/fail
by adding pass/fail logic inside the test itself.
On 7/1/24 1:40 PM, Muhammad Usama Anjum wrote:
> Soft reminder
>
> On 6/2/24 6:24 PM, Muhammad Usama Anjum wrote:
>> Conform the layout, in
This patch brings just readability implements by using kselftests wrappers
instead of manual pass/fail test cases counting. It has been on mailing
list from several months now. Please can someone ack or nack?
On 7/1/24 1:38 PM, Muhammad Usama Anjum wrote:
> Adding more reviewers. Please rev
On 7/10/24 4:31 PM, Catalin Marinas wrote:
> On Sun, Jun 02, 2024 at 06:24:59PM +0500, Muhammad Usama Anjum wrote:
>> Conform the layout, informational and status messages to TAP. No
>> functional change is intended other than the layout of output messages.
>>
>> Si
On 7/10/24 9:18 PM, Shuah Khan wrote:
> On 7/10/24 03:33, Muhammad Usama Anjum wrote:
>> Hi Shuah,
>>
>> Can you take the patch as is or by removing following from this patch:
>>
>> - if (geteuid() != 0)
>> + if (geteuid())
>
> As Aleksa menti
On 7/10/24 9:16 PM, Shuah Khan wrote:
> On 7/10/24 03:37, Muhammad Usama Anjum wrote:
>> This patch brings just readability implements by using kselftests wrappers
>> instead of manual pass/fail test cases counting. It has been on mailing
>> list from several months now. Plea
On 7/11/24 9:39 PM, Shuah Khan wrote:
> On 7/11/24 00:52, Muhammad Usama Anjum wrote:
>> On 7/10/24 9:16 PM, Shuah Khan wrote:
>>> On 7/10/24 03:37, Muhammad Usama Anjum wrote:
>>>> This patch brings just readability implements by using kselftests wrappers
>>
Use kselftest wrapper to mark tests pass/fail instead of manually
counting. This is needed to return correct exit status. This also
improves readability and mainability.
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftests/x86/vdso_restorer.c | 20 +++-
1 file changed
Return correct exit status, KSFT_SKIP if the pre-conditions aren't met.
Return KSFT_FAIL if error occurs. Use ksft_finished() which will
compmare the total planned tests with passed tests to return the exit
value.
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftest
In this series, 4 tests are being conformed to TAP.
Changes since v1:
- Correct the description of patches with what improvements they are
bringing and why they are required
Muhammad Usama Anjum (4):
selftests: x86: check_initial_reg_state: remove manual counting and
increase
- Removes manual counting of pass and fail tests
- Increase readability and maintainability of tests
- Print logs in standard format (without [RUN], [OK] tags)
Signed-off-by: Muhammad Usama Anjum
---
.../selftests/x86/check_initial_reg_state.c | 24 +--
1 file changed, 11
- Correct the skip, pass and fail return codes. Otherwise the test
always return 0
- Returns correct number of stats about passed/failed tests
- Print logs in standard format
Signed-off-by: Muhammad Usama Anjum
---
.../selftests/x86/corrupt_xstate_header.c | 30 +++
1 file
- Add test skip support instead of returning success at skip time for the
kselftest script to understand correct exit status
- Print details about errno if error occurs
- Increase readability and maintainability
- Print logs in standard format
Signed-off-by: Muhammad Usama Anjum
- Remove manual pass/fail tests counting
- Increase readability
- Print details about errno if error occurs
- Print logs in standard format
Signed-off-by: Muhammad Usama Anjum
---
tools/testing/selftests/x86/entry_from_vm86.c | 109 +-
1 file changed, 53 insertions(+), 56
In this series, 4 tests are being conformed to TAP.
Changes since v1:
- Correct the description of patches with what improvements they are
bringing and why they are required
Changes since v2:
- Correct the subject of series
Muhammad Usama Anjum (4):
selftests: x86: check_initial_reg_state
- Removes manual counting of pass and fail tests
- Increase readability and maintainability of tests
- Print logs in standard format (without [RUN], [OK] tags)
Signed-off-by: Muhammad Usama Anjum
---
.../selftests/x86/check_initial_reg_state.c | 24 +--
1 file changed, 11
201 - 300 of 481 matches
Mail list logo