]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - tools/perf/util/xyarray.c
Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[mirror_ubuntu-artful-kernel.git] / tools / perf / util / xyarray.c
1 #include "xyarray.h"
2 #include "util.h"
3
4 struct xyarray *xyarray__new(int xlen, int ylen, size_t entry_size)
5 {
6 size_t row_size = ylen * entry_size;
7 struct xyarray *xy = zalloc(sizeof(*xy) + xlen * row_size);
8
9 if (xy != NULL) {
10 xy->entry_size = entry_size;
11 xy->row_size = row_size;
12 xy->entries = xlen * ylen;
13 }
14
15 return xy;
16 }
17
18 void xyarray__reset(struct xyarray *xy)
19 {
20 size_t n = xy->entries * xy->entry_size;
21
22 memset(xy->contents, 0, n);
23 }
24
25 void xyarray__delete(struct xyarray *xy)
26 {
27 free(xy);
28 }