opd_image.h File Reference

#include "op_list.h"
#include "op_config_24.h"
#include "op_types.h"
#include <time.h>
Include dependency graph for opd_image.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  opd_image

Typedefs

typedef void(* opd_image_cb )(struct opd_image *)

Functions

void opd_for_each_image (opd_image_cb imagecb)
void opd_init_images (void)
void opd_delete_image (struct opd_image *image)
struct opd_imageopd_get_kernel_image (char const *name, char const *app_name, pid_t tid, pid_t tgid)
struct opd_imageopd_get_image (char const *name, char const *app_name, int kernel, pid_t tid, pid_t tgid)
int opd_get_nr_images (void)

Detailed Description

Management of binary images

Remarks:
Copyright 2002 OProfile authors
Read the file COPYING
Author:
John Levon
Philippe Elie

Definition in file opd_image.h.


Typedef Documentation

typedef void(* opd_image_cb)(struct opd_image *)

callback function passed to opd_for_each_image()

Definition at line 52 of file opd_image.h.


Function Documentation

void opd_delete_image ( struct opd_image image  ) 
Parameters:
image the image pointer

Decrement reference count of image, if reference count is zero flush and close the samples files then freeze all memory belonging to this image.

Definition at line 49 of file opd_image.c.

References opd_image::app_name, opd_image::hash_next, opd_image::kernel, list_del(), opd_image::name, nr_images, opd_close_image_samples_files(), opd_image::ref_count, opd_image::tgid, opd_image::tid, verbprintf, and vmisc.

Referenced by opd_24_exit(), opd_kill_maps(), and opd_remove_kernel_mapping().

Here is the call graph for this function:

Here is the caller graph for this function:

void opd_for_each_image ( opd_image_cb  imagecb  ) 
Parameters:
imagecb callback to apply onto each existing image struct

the callback receive a struct opd_image * (not a const struct) and is allowed to freeze the image struct itself.

Definition at line 79 of file opd_image.c.

References opd_image::hash_next, list_entry, list_for_each_safe, OPD_IMAGE_HASH_SIZE, and opd_images.

Referenced by opd_24_exit(), and opd_sighup().

Here is the caller graph for this function:

struct opd_image* opd_get_image ( char const *  name,
char const *  app_name,
int  kernel,
pid_t  tid,
pid_t  tgid 
) [read]

opd_get_image - get an image from the image structure

Parameters:
name name of image
app_name the application name where belongs this image
kernel is the image a kernel/module image
tid thread id
tgid thread group id

Get the image specified by the file name name from the image structure. If it is not present, the image is added to the structure. In either case, the image number is returned.

Definition at line 249 of file opd_image.c.

References opd_find_image(), and opd_new_image().

Referenced by opd_add_ascii_map(), opd_get_ascii_maps(), opd_get_kernel_image(), opd_handle_fork(), and opd_handle_mapping().

Here is the call graph for this function:

Here is the caller graph for this function:

struct opd_image* opd_get_kernel_image ( char const *  name,
char const *  app_name,
pid_t  tid,
pid_t  tgid 
) [read]

opd_get_kernel_image - get a kernel image

Parameters:
name of image
app_name application owner of this kernel image. non-null only when separate_kernel_sample != 0
tid thread id
tgid thread group id

Create and initialise an image adding it to the image lists and to image hash list. Note than at creation reference count is zero, it's caller responsabilities to incr this count.

Definition at line 260 of file opd_image.c.

References opd_get_image().

Referenced by opd_add_kernel_map(), opd_get_module_info(), and opd_init_kernel_image().

Here is the call graph for this function:

Here is the caller graph for this function:

int opd_get_nr_images ( void   ) 

opd_get_nr_images - return number of images

Definition at line 43 of file opd_image.c.

References nr_images.

Referenced by opd_print_24_stats().

Here is the caller graph for this function:

void opd_init_images ( void   ) 

initialize opd_image container

Definition at line 35 of file opd_image.c.

References list_init(), OPD_IMAGE_HASH_SIZE, and opd_images.

Referenced by opd_24_init().

Here is the call graph for this function:

Here is the caller graph for this function:


Generated on 8 Nov 2012 for Oprofile by  doxygen 1.6.1