On 2/2/24 17:01, 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 usama.anjum@collabora.com
.../selftests/mm/virtual_address_range.c | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-)
diff --git a/tools/testing/selftests/mm/virtual_address_range.c b/tools/testing/selftests/mm/virtual_address_range.c index bae0ceaf95b13..7bcf8d48256a6 100644 --- a/tools/testing/selftests/mm/virtual_address_range.c +++ b/tools/testing/selftests/mm/virtual_address_range.c @@ -12,6 +12,7 @@ #include <errno.h> #include <sys/mman.h> #include <sys/time.h> +#include "../kselftest.h" /*
- Maximum address range mapped with a single mmap()
@@ -68,23 +69,15 @@ static char *hind_addr(void) return (char *) (1UL << bits); } -static int validate_addr(char *ptr, int high_addr) +static void validate_addr(char *ptr, int high_addr) { unsigned long addr = (unsigned long) ptr;
- if (high_addr) {
if (addr < HIGH_ADDR_MARK) {
printf("Bad address %lx\n", addr);
return 1;
}
return 0;
- }
- if (high_addr && addr < HIGH_ADDR_MARK)
ksft_exit_fail_msg("Bad address %lx\n", addr);
- if (addr > HIGH_ADDR_MARK) {
printf("Bad address %lx\n", addr);
return 1;
- }
- return 0;
- if (addr > HIGH_ADDR_MARK)
}ksft_exit_fail_msg("Bad address %lx\n", addr);
static int validate_lower_address_hint(void) @@ -107,23 +100,29 @@ int main(int argc, char *argv[]) char *hint; unsigned long i, lchunks, hchunks;
- ksft_print_header();
- ksft_set_plan(1);
- for (i = 0; i < NR_CHUNKS_LOW; i++) { ptr[i] = mmap(NULL, MAP_CHUNK_SIZE, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
if (ptr[i] == MAP_FAILED) {
if (validate_lower_address_hint())
return 1;
if (validate_lower_address_hint()) {
ksft_test_result_skip("Memory constraint not fulfilled\n");
ksft_finished();
}
Hi,
When validate_lower_address_hint() returns 1, it implies that despite filling the lower
range, mmap succeeded. IMHO, ksft_exit_fail_msg() should be used instead, with a
more descriptive message indicating that the memory was unexpectedly allocated.
Regards
Dev
break; }
if (validate_addr(ptr[i], 0))
return 1;
} lchunks = i; hptr = (char **) calloc(NR_CHUNKS_HIGH, sizeof(char *));validate_addr(ptr[i], 0);
- if (hptr == NULL)
return 1;
- if (hptr == NULL) {
ksft_test_result_skip("Memory constraint not fulfilled\n");
ksft_finished();
- }
for (i = 0; i < NR_CHUNKS_HIGH; i++) { hint = hind_addr(); @@ -133,8 +132,7 @@ int main(int argc, char *argv[]) if (hptr[i] == MAP_FAILED) break;
if (validate_addr(hptr[i], 1))
return 1;
} hchunks = i;validate_addr(hptr[i], 1);
@@ -145,5 +143,7 @@ int main(int argc, char *argv[]) munmap(hptr[i], MAP_CHUNK_SIZE); free(hptr);
- return 0;
- ksft_test_result_pass("Test\n");
- ksft_finished(); }