A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[mc] Comments/documentation of memory related code
[simgrid.git]
/
src
/
xbt
/
mmalloc
/
mmprivate.h
diff --git
a/src/xbt/mmalloc/mmprivate.h
b/src/xbt/mmalloc/mmprivate.h
index
26feb7d
..
dd3856a
100644
(file)
--- a/
src/xbt/mmalloc/mmprivate.h
+++ b/
src/xbt/mmalloc/mmprivate.h
@@
-1,15
+1,16
@@
-/* Declarations for `mmalloc' and friends.
- Copyright 1990, 1991, 1992 Free Software Foundation
+/* Declarations for `mmalloc' and friends. */
- Written May 1989 by Mike Haertel.
- Heavily modified Mar 1992 by Fred Fish. (fnf@cygnus.com) */
-
-/* Copyright (c) 2010. The SimGrid Team.
+/* Copyright (c) 2010-2014. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
+/* Copyright 1990, 1991, 1992 Free Software Foundation
+
+ Written May 1989 by Mike Haertel.
+ Heavily modified Mar 1992 by Fred Fish. (fnf@cygnus.com) */
+
#ifndef __MMPRIVATE_H
#define __MMPRIVATE_H 1
#ifndef __MMPRIVATE_H
#define __MMPRIVATE_H 1
@@
-109,6
+110,7
@@
struct mstats
};
typedef struct s_heap_area{
};
typedef struct s_heap_area{
+ int valid;
int block;
int fragment;
}s_heap_area_t, *heap_area_t;
int block;
int fragment;
}s_heap_area_t, *heap_area_t;
@@
-154,16
+156,16
@@
typedef struct {
/* Heap information for a busy block. */
struct {
size_t nfree; /* Free fragments in a fragmented block. */
/* Heap information for a busy block. */
struct {
size_t nfree; /* Free fragments in a fragmented block. */
- s
hor
t frag_size[MAX_FRAGMENT_PER_BLOCK];
- void *bt[MAX_FRAGMENT_PER_BLOCK][XBT_BACKTRACE_SIZE]; /* Where it was malloced (or realloced lastly) */
-
heap_area_t equal_to
[MAX_FRAGMENT_PER_BLOCK];
+ s
size_
t frag_size[MAX_FRAGMENT_PER_BLOCK];
+
//
void *bt[MAX_FRAGMENT_PER_BLOCK][XBT_BACKTRACE_SIZE]; /* Where it was malloced (or realloced lastly) */
+
int ignore
[MAX_FRAGMENT_PER_BLOCK];
} busy_frag;
struct {
size_t size; /* Size (in blocks) of a large cluster. */
size_t busy_size; /* Actually used space, in bytes */
} busy_frag;
struct {
size_t size; /* Size (in blocks) of a large cluster. */
size_t busy_size; /* Actually used space, in bytes */
- void *bt[XBT_BACKTRACE_SIZE]; /* Where it was malloced (or realloced lastly) */
- int bt_size;
-
heap_area_t equal_to
;
+
//
void *bt[XBT_BACKTRACE_SIZE]; /* Where it was malloced (or realloced lastly) */
+
//
int bt_size;
+
int ignore
;
} busy_block;
/* Heap information for a free block (that may be the first of a free cluster). */
struct {
} busy_block;
/* Heap information for a free block (that may be the first of a free cluster). */
struct {
@@
-238,7
+240,9
@@
struct mdesc {
void *breakval;
/* The end of the current memory region for this malloc heap. This is
void *breakval;
/* The end of the current memory region for this malloc heap. This is
- the first location past the end of mapped memory. */
+ the first location past the end of mapped memory.
+ Compared to breakval, this value is rounded to the next memory page.
+ */
void *top;
void *top;