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]
Date:	Tue, 23 Sep 2014 15:41:20 -0700
From:	ebiederm@...ssion.com (Eric W. Biederman)
To:	Shuah Khan <shuahkh@....samsung.com>
Cc:	akpm@...ux-foundation.org, gregkh@...uxfoundation.org,
	colin.king@...onical.com, dbueso@...e.de, serge.hallyn@...ntu.com,
	thierry@...ux.vnet.ibm.com, luto@...capital.net,
	linux-api@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 5/7] selftests/mount: change test to use ksft framework

Shuah Khan <shuahkh@....samsung.com> writes:

> Change mount test to use kselftest framework to report
> test results.

Nacked-by: "Eric W. Biederman" <ebiederm@...ssion.com>

I am curious did you even run these tests?   I can't possibly see how
the tests would have passed with this change.  At the very least you
have taken this test from linear to exponential time complexity.

> Signed-off-by: Shuah Khan <shuahkh@....samsung.com>
> ---
>  tools/testing/selftests/mount/unprivileged-remount-test.c | 8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/tools/testing/selftests/mount/unprivileged-remount-test.c b/tools/testing/selftests/mount/unprivileged-remount-test.c
> index 1b3ff2f..c64d442 100644
> --- a/tools/testing/selftests/mount/unprivileged-remount-test.c
> +++ b/tools/testing/selftests/mount/unprivileged-remount-test.c
> @@ -13,6 +13,8 @@
>  #include <stdbool.h>
>  #include <stdarg.h>
>  
> +#include "../kselftest.h"
> +
>  #ifndef CLONE_NEWNS
>  # define CLONE_NEWNS 0x00020000
>  #endif
> @@ -45,7 +47,7 @@ static void die(char *fmt, ...)
>  	va_start(ap, fmt);
>  	vfprintf(stderr, fmt, ap);
>  	va_end(ap);
> -	exit(EXIT_FAILURE);
> +	ksft_exit_fail();
>  }
>  
>  static void write_file(char *filename, char *fmt, ...)
> @@ -176,7 +178,7 @@ bool test_unpriv_remount(int mount_flags, int remount_flags, int invalid_flags)
>  		die("remount of /tmp with invalid flags "
>  		    "succeeded unexpectedly\n");
>  	}
> -	exit(EXIT_SUCCESS);
> +	return ksft_exit_pass();

This change is a deep bug. 

This exit is a forked child process (not from the test itself). That a
few lines earlier in the test I test the value of in waitpid.

Also in your change commit comment if no where else you should have
called out that you were making a semantic change to the test.

>  }
>  
>  static bool test_unpriv_remount_simple(int mount_flags)
> @@ -238,5 +240,5 @@ int main(int argc, char **argv)
>  	{
>  		die("Default atime malfunctions\n");
>  	}
> -	return EXIT_SUCCESS;
> +	return ksft_exit_pass();
>  }
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ