[LTP] [PATCH] syscalls/process_madvise01: fix smaps scan and min_swap_avail

Jan Stancek jstancek@redhat.com
Fri Oct 27 11:49:17 CEST 2023


On Fri, Oct 27, 2023 at 10:55 AM Andrea Cervesato
<andrea.cervesato@suse.com> wrote:
>
> Hi,
>
> On 10/27/23 10:50, Jan Stancek wrote:
> > On Thu, Oct 19, 2023 at 10:58 AM Andrea Cervesato via ltp
> > <ltp@lists.linux.it> wrote:
> >> Hi!
> >>
> >> On 10/19/23 10:51, Jan Stancek wrote:
> >>> smaps matching can prematurely end, because the comparison to "VmFlags"
> >>> string is not exact. So depending on address on line, it can break
> >>> before it finds Swap line. This makes the test fail on recent aarch64
> >>> kernels.
> >>>
> >>> min_swap_avail per documentation is in MB not KB.
> >>>
> >>> Signed-off-by: Jan Stancek <jstancek@redhat.com>
> >>> ---
> >>>    testcases/kernel/syscalls/process_madvise/process_madvise.h   | 2 +-
> >>>    testcases/kernel/syscalls/process_madvise/process_madvise01.c | 2 +-
> >>>    2 files changed, 2 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/testcases/kernel/syscalls/process_madvise/process_madvise.h b/testcases/kernel/syscalls/process_madvise/process_madvise.h
> >>> index c4570e5309de..5b227ada099e 100644
> >>> --- a/testcases/kernel/syscalls/process_madvise/process_madvise.h
> >>> +++ b/testcases/kernel/syscalls/process_madvise/process_madvise.h
> >>> @@ -54,7 +54,7 @@ static inline void read_address_mapping(unsigned long address, struct addr_mappi
> >>>                if (!found)
> >>>                        continue;
> >>>
> >>> -             if (found && strcmp(line, "VmFlags") >= 0)
> >>> +             if (found && strncmp(line, "VmFlags", 7) == 0)
> >>>                        break;
> >>>
> >>>                if (sscanf(line, "%31[^:]: %d", label, &value) > 0) {
> >>> diff --git a/testcases/kernel/syscalls/process_madvise/process_madvise01.c b/testcases/kernel/syscalls/process_madvise/process_madvise01.c
> >>> index 322b4cf60353..0fd3c1ef4f80 100644
> >>> --- a/testcases/kernel/syscalls/process_madvise/process_madvise01.c
> >>> +++ b/testcases/kernel/syscalls/process_madvise/process_madvise01.c
> >>> @@ -123,7 +123,7 @@ static struct tst_test test = {
> >>>        .min_kver = "5.10",
> >>>        .needs_checkpoints = 1,
> >>>        .needs_root = 1,
> >>> -     .min_swap_avail = MEM_CHILD / TST_KB,
> >>> +     .min_swap_avail = MEM_CHILD / TST_MB,
> >>>        .needs_kconfigs = (const char *[]) {
> >>>                "CONFIG_SWAP=y",
> >>>                NULL
> >> Thanks for fixing this.
> > Could I add your Reviewed/Acked-by to the patch?
>
> Yes please.
>
> Acked-by: Andrea Cervesato <andrea.cervesato@mailbox.org>

Pushed.

> >
> >> Andrea Cervesato
> >>
> >>
> >> --
> >> Mailing list info: https://lists.linux.it/listinfo/ltp
> >>
> Andrea Cervesato
>



More information about the ltp mailing list