00001 /* 00002 * @file pe_profiling/operf_kernel.h 00003 * This file is based on daemon/opd_kernel and is used for 00004 * dealing with the kernel and kernel module samples. 00005 * 00006 * @remark Copyright 2011 OProfile authors 00007 * @remark Read the file COPYING 00008 * 00009 * Created on: Dec 12, 2011 00010 * @author Maynard Johnson 00011 * (C) Copyright IBM Corp. 2011 00012 */ 00013 00014 #ifndef OPERF_KERNEL_H_ 00015 #define OPERF_KERNEL_H_ 00016 00017 #include "op_types.h" 00018 #include "op_list.h" 00019 00020 00022 void operf_create_vmlinux(char const * name, char const * arg); 00023 00025 struct operf_kernel_image { 00026 char * name; 00027 vma_t start; 00028 vma_t end; 00029 struct list_head list; 00030 }; 00031 00033 struct operf_kernel_image * 00034 operf_find_kernel_image(vma_t pc); 00035 00037 const char * operf_get_vmlinux_name(void); 00038 00042 void operf_create_module(char const * name, vma_t start, vma_t end); 00043 00047 void operf_free_modules_list(void); 00048 00049 00050 00051 #endif /* OPERF_KERNEL_H_ */