From: Petr Vorel <pvorel@suse.cz>
To: William Roche <william.roche@oracle.com>
Cc: ltp@lists.linux.it
Subject: Re: [LTP] [LTP PATCH v1 1/1] syscalls/madvise11: Add some memory page soft-offlining control
Date: Sat, 13 Aug 2022 21:59:31 +0200 [thread overview]
Message-ID: <YvgCowvy1VJOPKj4@pevik> (raw)
In-Reply-To: <1659975072-29808-2-git-send-email-william.roche@oracle.com>
Hi William,
Just few quick notes before somebody get to proper review:
There should be a record in runtest/syscalls:
madvise11 madvise11
...
> +++ b/testcases/kernel/syscalls/madvise/Makefile
> +
> +/*\
> + * [Description]
> + * Stress the VMM and soft-offline code by spawning N threads which
> + * allocate memory pages and soft-offline them repeatedly.
nit: if you intend this get formatted as paragraph, insert spaces:
> + * Control that soft-offlined pages get correctly replaced: with the
> + * same content and without SIGBUS generation when accessed.
and here
> + * Could be used for example as a regression test-case for the
> + * poisoned soft-offlined pages case fixed by upstream commit
> + * d4ae9916ea29 (mm: soft-offline: close the race against page allocation)
Instead of this I'd put .tags record into struct tst_test.
https://github.com/linux-test-project/ltp/wiki/C-Test-API#138-test-tags
Also there are some formatting errors:
$ make check-madvise11
CHECK testcases/kernel/syscalls/madvise/madvise11.c
madvise11.c:46: ERROR: do not initialise statics to 0
madvise11.c:51: WARNING: Missing a blank line after declarations
madvise11.c:55: ERROR: open brace '{' following function definitions go on the next line
madvise11.c:213: ERROR: "foo* bar" should be "foo *bar"
madvise11.c:254: WARNING: Missing a blank line after declarations
madvise11.c:295: ERROR: return is not a function, parentheses are not required
madvise11.c:303: ERROR: "foo* bar" should be "foo *bar"
madvise11.c:316: ERROR: space required after that ',' (ctx:VxV)
madvise11.c:338: ERROR: space required after that ',' (ctx:VxV)
I'd also consider which comments are really useful. Most of them is, but at
least some document what is obvious, e.g.:
/* Number of threads to create */
/* Success! */ => you specified return at the comment above the function
allocate_offline(), also this return code is pretty obvious:
...
> + fd = SAFE_OPEN("/dev/kmsg", O_WRONLY);
> + if (fd < 0) {
> + tst_res(TCONF | TERRNO,"/dev/kmsg not available for writing");
> + return;
> + }
If check is not needed, because SAFE_OPEN() exits the test with
tst_brk(TBROK, "open(...) failed"
Also fd might not get unclosed, which could hit too many open files.
...
Also trying Fedora once more:
Running single iteration (./madvise11) or two iterations (./madvise11 -i2)
it fails in the end:
# ./madvise11 -i2
...
madvise11.c:136: TINFO: Thread [59]: allocate_offline() returned 0, succeeded. Thread exiting
madvise11.c:175: TPASS: soft-offline/alloc stress test finished successfully
madvise11.c:316: TINFO: Restore 900 Soft-offlined pages
tst_test.c:1583: TBROK: Test killed by SIGSEGV!
Summary:
passed 2
failed 0
broken 1
skipped 0
warnings 0
But running more, i.e. 5 iterations, I don't get SIGSEGV.
Kind regards,
Petr
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next prev parent reply other threads:[~2022-08-13 19:59 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-08 16:11 [LTP] [LTP PATCH v1 0/1] Add some memory page soft-offlining control William Roche
2022-08-08 16:11 ` [LTP] [LTP PATCH v1 1/1] syscalls/madvise11: " William Roche
2022-08-10 17:00 ` Petr Vorel
2022-08-10 20:18 ` William Roche
2022-08-11 7:34 ` Petr Vorel
2022-08-13 19:59 ` Petr Vorel [this message]
2022-08-13 20:28 ` Petr Vorel
2022-08-16 9:18 ` Richard Palethorpe
2023-01-27 10:05 ` [LTP] [LTP PATCH v2 0/1] " william.roche
2023-01-27 10:05 ` [LTP] [LTP PATCH v2 1/1] madvise11: Add test for memory allocation / Soft-offlining possible race william.roche
2023-02-13 10:00 ` Richard Palethorpe
2023-02-20 10:26 ` [LTP] [LTP PATCH v3 0/1] Add some memory page soft-offlining control william.roche
2023-02-20 10:26 ` [LTP] [LTP PATCH v3 1/1] madvise11: Add test for memory allocation / Soft-offlining possible race william.roche
2023-02-27 10:16 ` Richard Palethorpe
2023-02-13 9:34 ` [LTP] [LTP PATCH v2 0/1] Add some memory page soft-offlining control Richard Palethorpe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YvgCowvy1VJOPKj4@pevik \
--to=pvorel@suse.cz \
--cc=ltp@lists.linux.it \
--cc=william.roche@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.