Changes in kernel/test/mm/falloc1.c [8cbf1c3:b0c2075] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/test/mm/falloc1.c
r8cbf1c3 rb0c2075 37 37 #include <align.h> 38 38 39 #define MAX_FRAMES 1024 U39 #define MAX_FRAMES 1024 40 40 #define MAX_ORDER 8 41 41 #define TEST_RUNS 2 … … 51 51 return "Unable to allocate frames"; 52 52 53 unsigned int results[MAX_ORDER + 1]; 53 unsigned int results[MAX_FRAMES + 1]; 54 54 55 for (unsigned int run = 0; run < TEST_RUNS; run++) { 55 for (unsigned int order = 0; order <= MAX_ORDER; order++) { 56 TPRINTF("Allocating %u frames blocks ... ", 1 << order); 56 for (size_t count = 1; count <= MAX_FRAMES; count++) { 57 size_t bytes = FRAMES2SIZE(count); 58 59 TPRINTF("Allocating %zu frames blocks (%zu bytes) ... ", 60 count, bytes); 57 61 58 62 unsigned int allocated = 0; 59 for (unsigned int i = 0; i < (MAX_FRAMES >> order); i++) {63 for (unsigned int i = 0; i < (MAX_FRAMES / count); i++) { 60 64 frames[allocated] = 61 PA2KA(frame_alloc(order, FRAME_ATOMIC, 0)); 62 63 if (ALIGN_UP(frames[allocated], FRAME_SIZE << order) != 64 frames[allocated]) { 65 TPRINTF("Block at address %p (size %u) is not aligned\n", 66 (void *) frames[allocated], (FRAME_SIZE << order) >> 10); 67 return "Test failed"; 68 } 65 PA2KA(frame_alloc(count, FRAME_ATOMIC, 0)); 69 66 70 67 if (frames[allocated]) … … 78 75 TPRINTF("%d blocks allocated.\n", allocated); 79 76 80 if (run ) {81 if (results[ order] != allocated)77 if (run > 0) { 78 if (results[count] != allocated) 82 79 return "Possible frame leak"; 83 80 } else 84 results[ order] = allocated;81 results[count] = allocated; 85 82 86 83 TPRINTF("Deallocating ... ");
Note:
See TracChangeset
for help on using the changeset viewer.