[LTP] [PATCH] kernel/syscall/setrlimit05.c: use a legal bad address for mips
Xiao Yang
yangx.jy@cn.fujitsu.com
Mon Nov 5 08:51:18 CET 2018
On 2018/11/05 15:30, Hongzhi.Song wrote:
> This testcase fails on mips32. The process is killed by SIGBUS which
> doesn't return EFAULT as expect.
>
> This is because:
> ((void *)-1) is not a legal bad address which causes the process
> killed by SIGBUG on mips.
>
> 'tst_get_bad_addr()' returns an address that should work on mips
> and other arches.
>
> Signed-off-by: Hongzhi.Song<hongzhi.song@windriver.com>
> ---
> testcases/kernel/syscalls/setrlimit/setrlimit05.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/testcases/kernel/syscalls/setrlimit/setrlimit05.c b/testcases/kernel/syscalls/setrlimit/setrlimit05.c
> index e716722..57b0b82 100644
> --- a/testcases/kernel/syscalls/setrlimit/setrlimit05.c
> +++ b/testcases/kernel/syscalls/setrlimit/setrlimit05.c
> @@ -31,9 +31,13 @@ static void verify_setrlimit(void)
> int status;
> pid_t pid;
>
> + void *bad_addr;
> +
> + bad_addr = tst_get_bad_addr(NULL);
> +
Hi Hongzhi,
Please use tab to do indention instead.
Other than that, it looks good to me.
Best Regards,
Xiao Yang
> pid = SAFE_FORK();
> if (!pid) {
> - TEST(setrlimit(RLIMIT_NOFILE, (void *) -1));
> + TEST(setrlimit(RLIMIT_NOFILE,(struct rlimit *)bad_addr));
> if (TST_RET != -1) {
> tst_res(TFAIL, "setrlimit() succeeded unexpectedly");
> exit(0);
More information about the ltp
mailing list