Пример #1
0
/* Module specific */
#include <linux/sched.h>
#include <linux/vmalloc.h>
#include <asm/uaccess.h>
#include <asm/current.h>
#include <vmregress_core.h>
#include <procprint.h>

/* Name of the module that appears on printk messages */
#define MODULENAME "testproc"
#define NUM_PROC_ENTRIES 1
#define PROCFOOTER "\nProc Test Completed on %u pages...\n"

static vmr_desc_t testinfo[] = {
	VMR_DESC_INIT(0, MODULENAME, vmr_read_proc, vmr_write_proc)
};

/* Module Register */
MODULE_AUTHOR("Mel Gorman <*****@*****.**>");
MODULE_DESCRIPTION("Test /proc interface");
MODULE_LICENSE("GPL");

char *testproc_buf;
unsigned int testproc_size=0;

/**
 * testproc_runtest - Get information for the proc entry and fill the buffer
 *
 * testproc_readproc needs a buffer to read from if the output is going to be 
 * more than one page in size. This function populates a large buffer for 
Пример #2
0
#include <linux/mm.h>
#include <linux/vmalloc.h>
#include <linux/spinlock.h>
#include <linux/highmem.h>
#include <asm/rmap.h>		/* Included only if available */
#include <vmr_mmzone.h>

#define MODULENAME "test_highalloc"
#define NUM_PROC_ENTRIES 3

#define HIGHALLOC_REPORT 0
#define HIGHALLOC_TIMING  1
#define HIGHALLOC_BUDDYINFO  2

static vmr_desc_t testinfo[] = {
	VMR_DESC_INIT(HIGHALLOC_REPORT, MODULENAME , vmr_read_proc, vmr_write_proc),
	VMR_DESC_INIT(HIGHALLOC_TIMING, MODULENAME "_timings", vmr_read_proc, vmr_write_proc),
	VMR_DESC_INIT(HIGHALLOC_BUDDYINFO, MODULENAME "_buddyinfo", vmr_read_proc, vmr_write_proc),
};

MODULE_AUTHOR("Mel Gorman <*****@*****.**>");
MODULE_DESCRIPTION("Test high order allocations");
MODULE_LICENSE("GPL");

/* Boolean to indicate whether to use gfp_highuser or not */
int gfp_highuser;
int ms_delay=100;
int expected_count=1;

/*
 * 256 == Attempt line
Пример #3
0
#include <asm/uaccess.h>
#include <asm/mman.h>
#include <asm/rmap.h>		/* Included only if available */
#include <vmr_mmzone.h>

#define MODULENAME "test_fault"
#define NUM_PROC_ENTRIES 4

/* Tests */ 
#define TEST_FAST 0
#define TEST_LOW  1
#define TEST_MIN  2
#define TEST_ZERO 3

static vmr_desc_t testinfo[] = {
	VMR_DESC_INIT(TEST_FAST, MODULENAME "_fast", vmr_read_proc, vmr_write_proc),
	VMR_DESC_INIT(TEST_LOW,  MODULENAME "_low", vmr_read_proc, vmr_write_proc),
	VMR_DESC_INIT(TEST_MIN,  MODULENAME "_min", vmr_read_proc, vmr_write_proc),
	VMR_DESC_INIT(TEST_ZERO, MODULENAME "_zero", vmr_read_proc, vmr_write_proc)
};

/* Simple function to give the full name of the test */
inline char *makename(char *fullname, char *testname) {
	strcpy(fullname, MODULENAME); 
	strcat(fullname, testname);
	return fullname;
}

/* Module information */
MODULE_AUTHOR("Mel Gorman <*****@*****.**>");
MODULE_DESCRIPTION("Test page fault paths");