Changeset 4a2f4bb in mainline for test/mm/falloc1/test.c


Ignore:
Timestamp:
2006-01-25T21:18:38Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
2a003d5b
Parents:
895be41
Message:

Fix and cleanup frame allocator tests.
falloc1:

  • fix so that it compiles on ia64
  • check that frames is not NULL

falloc2:

  • threads cannot be passed argument in the way this test did (otherwise some threads will use the same value for val)
    • check that frames is not NULL
    • free frames at the end of the test
File:
1 edited

Legend:

Unmodified
Added
Removed
  • test/mm/falloc1/test.c

    r895be41 r4a2f4bb  
    3434#include <arch/types.h>
    3535#include <debug.h>
     36#include <align.h>
    3637
    3738#define MAX_FRAMES 1024
     
    4849
    4950        ASSERT(TEST_RUNS > 1);
     51        ASSERT(frames != NULL)
    5052
    51         for (run=0;run<=TEST_RUNS;run++) {
    52                 for (order=0;order<=MAX_ORDER;order++) {
    53                         printf("Allocating %d frames blocks ... ", 1<<order);
     53        for (run = 0; run < TEST_RUNS; run++) {
     54                for (order = 0; order <= MAX_ORDER; order++) {
     55                        printf("Allocating %d frames blocks ... ", 1 << order);
    5456                        allocated = 0;
    55                         for (i=0;i<MAX_FRAMES>>order;i++) {
     57                        for (i = 0; i < MAX_FRAMES >> order; i++) {
    5658                                frames[allocated] = frame_alloc(FRAME_NON_BLOCKING | FRAME_KA, order, &status);
    5759                               
    58                                 if (frames[allocated] % (FRAME_SIZE << order) != 0) {
     60                                if (ALIGN_UP(frames[allocated], FRAME_SIZE << order) != frames[allocated]) {
    5961                                        panic("Test failed. Block at address %X (size %dK) is not aligned\n", frames[allocated], (FRAME_SIZE << order) >> 10);
    6062                                }
     
    6870                        }
    6971               
    70                         printf("%d blocks alocated.\n", allocated);
     72                        printf("%d blocks allocated.\n", allocated);
    7173               
    7274                        if (run) {
     
    7476                                        panic("Test failed. Frame leak possible.\n");
    7577                                }
    76                         } else results[order] = allocated;
     78                        } else
     79                                results[order] = allocated;
    7780                       
    7881                        printf("Deallocating ... ");
    79                         for (i=0;i<allocated;i++) {
     82                        for (i = 0; i < allocated; i++) {
    8083                                frame_free(frames[i]);
    8184                        }
     
    8689        free(frames);
    8790       
    88         printf("Test passed\n");
     91        printf("Test passed.\n");
    8992}
    9093
Note: See TracChangeset for help on using the changeset viewer.