perf xyarray: Save max_x, max_y

Save the original array dimensions in xyarrays, so that users can
retrieve them later. Add some inline functions to access these fields.

Signed-off-by: Andi Kleen <[email protected]>
Acked-by: Jiri Olsa <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
[ As noticed by Jiri, fix up namespacing: xy__method() -> xyarray__method() ]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
This commit is contained in:
Andi Kleen authored and Arnaldo Carvalho de Melo committed 2017-08-22 11:51:28 -03:00
1 parent ba63f76e22
commit d74be47673
2 files changed
+14

No files matched your search

+2
View File
@@ -12,6 +12,8 @@ struct xyarray *xyarray__new(int xlen, int ylen, size_t entry_size)
xy->entry_size = entry_size;
xy->row_size = row_size;
xy->entries = xlen * ylen;
xy->max_x = xlen;
xy->max_y = ylen;
}
return xy;
+12
View File
@@ -7,6 +7,8 @@ struct xyarray {
size_t row_size;
size_t entry_size;
size_t entries;
size_t max_x;
size_t max_y;
char contents[];
};
@@ -19,4 +21,14 @@ static inline void *xyarray__entry(struct xyarray *xy, int x, int y)
return &xy->contents[x * xy->row_size + y * xy->entry_size];
}
static inline int xyarray__max_y(struct xyarray *xy)
{
return xy->max_x;
}
static inline int xyarray__max_x(struct xyarray *xy)
{
return xy->max_y;
}
#endif /* _PERF_XYARRAY_H_ */