operf_utils.h File Reference

#include <linux/perf_event.h>
#include <dirent.h>
#include <vector>
#include "config.h"
#include "op_config.h"
#include "op_types.h"
#include "operf_event.h"
#include <signal.h>
Include dependency graph for operf_utils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  OP_perf_utils::vmlinux_info

Namespaces

namespace  operf_options
namespace  OP_perf_utils

Defines

#define OP_APPNAME_LEN   1024
#define MMAP_WINDOW_SZ   (32 * 1024 * 1024ULL)

Typedefs

typedef struct
OP_perf_utils::vmlinux_info 
OP_perf_utils::vmlinux_info_t

Functions

static size_t align_64bit (u64 x)
void OP_perf_utils::op_record_kernel_info (std::string vmlinux_file, u64 start_addr, u64 end_addr, int output_fd, operf_record *pr)
void OP_perf_utils::op_get_kernel_event_data (struct mmap_data *md, operf_record *pr)
void OP_perf_utils::op_perfrecord_sigusr1_handler (int sig __attribute__((unused)), siginfo_t *siginfo __attribute__((unused)), void *u_context __attribute__((unused)))
void OP_perf_utils::op_perfread_sigusr1_handler (int sig __attribute__((unused)), siginfo_t *siginfo __attribute__((unused)), void *u_context __attribute__((unused)))
int OP_perf_utils::op_record_process_info (bool system_wide, pid_t pid, operf_record *pr, int output_fd)
int OP_perf_utils::op_write_output (int output, void *buf, size_t size)
void OP_perf_utils::op_write_event (event_t *event, u64 sample_type)
int OP_perf_utils::op_read_from_stream (std::ifstream &is, char *buf, std::streamsize sz)
int OP_perf_utils::op_mmap_trace_file (struct mmap_info &info, bool init)
int OP_perf_utils::op_get_next_online_cpu (DIR *dir, struct dirent *entry)
bool OP_perf_utils::op_convert_event_vals (std::vector< operf_event_t > *evt_vec)
void OP_perf_utils::op_reprocess_unresolved_events (u64 sample_type)
void OP_perf_utils::op_release_resources (void)

Variables

bool operf_options::system_wide
int operf_options::pid
int operf_options::mmap_pages_mult
std::string operf_options::session_dir
bool operf_options::separate_cpu
bool operf_options::separate_thread
bool no_vmlinux
int kptr_restrict
uid_t my_uid
bool throttled
unsigned int op_nr_counters

Detailed Description

Header file containing definitions for handling a user request to profile using the new Linux Performance Events Subsystem.

Remarks:
Copyright 2011 OProfile authors
Read the file COPYING

Created on: Dec 7, 2011

Author:
Maynard Johnson (C) Copyright IBM Corp. 2011

Definition in file operf_utils.h.


Define Documentation

#define MMAP_WINDOW_SZ   (32 * 1024 * 1024ULL)

Definition at line 45 of file operf_utils.h.

Referenced by OP_perf_utils::op_mmap_trace_file().

#define OP_APPNAME_LEN   1024

Definition at line 41 of file operf_utils.h.

Referenced by validate_app_name().


Function Documentation

static size_t align_64bit ( u64  x  )  [inline, static]

Definition at line 50 of file operf_utils.h.

Referenced by _record_module_info(), _record_one_process_info(), and op_record_process_exec_mmaps().

Here is the caller graph for this function:


Variable Documentation

Definition at line 72 of file operf.cpp.

Referenced by __handle_mmap_event(), and main().

uid_t my_uid

Definition at line 70 of file operf.cpp.

Referenced by __handle_mmap_event(), _do_jitdump_convert(), and main().

bool no_vmlinux
unsigned int op_nr_counters
bool throttled

Definition at line 58 of file operf_utils.cpp.


Generated on 8 Nov 2012 for Oprofile by  doxygen 1.6.1