projects
/
lttng-modules.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add kmalloc failover to vmalloc
[lttng-modules.git]
/
lib
/
prio_heap
/
lttng_prio_heap.c
diff --git
a/lib/prio_heap/lttng_prio_heap.c
b/lib/prio_heap/lttng_prio_heap.c
index 6db7f524008c332dfa426f5dbf7c8a5d4b9361b7..01ed69f2cac1a52b62a794e22ca5a43f20a798b9 100644
(file)
--- a/
lib/prio_heap/lttng_prio_heap.c
+++ b/
lib/prio_heap/lttng_prio_heap.c
@@
-26,6
+26,7
@@
#include <linux/slab.h>
#include <lib/prio_heap/lttng_prio_heap.h>
#include <linux/slab.h>
#include <lib/prio_heap/lttng_prio_heap.h>
+#include <wrapper/vmalloc.h>
#ifdef DEBUG_HEAP
void lttng_check_heap(const struct lttng_ptr_heap *heap)
#ifdef DEBUG_HEAP
void lttng_check_heap(const struct lttng_ptr_heap *heap)
@@
-70,12
+71,12
@@
int heap_grow(struct lttng_ptr_heap *heap, size_t new_len)
return 0;
heap->alloc_len = max_t(size_t, new_len, heap->alloc_len << 1);
return 0;
heap->alloc_len = max_t(size_t, new_len, heap->alloc_len << 1);
- new_ptrs =
k
malloc(heap->alloc_len * sizeof(void *), heap->gfpmask);
+ new_ptrs =
lttng_kv
malloc(heap->alloc_len * sizeof(void *), heap->gfpmask);
if (!new_ptrs)
return -ENOMEM;
if (heap->ptrs)
memcpy(new_ptrs, heap->ptrs, heap->len * sizeof(void *));
if (!new_ptrs)
return -ENOMEM;
if (heap->ptrs)
memcpy(new_ptrs, heap->ptrs, heap->len * sizeof(void *));
-
k
free(heap->ptrs);
+
lttng_kv
free(heap->ptrs);
heap->ptrs = new_ptrs;
return 0;
}
heap->ptrs = new_ptrs;
return 0;
}
@@
-109,7
+110,7
@@
int lttng_heap_init(struct lttng_ptr_heap *heap, size_t alloc_len,
void lttng_heap_free(struct lttng_ptr_heap *heap)
{
void lttng_heap_free(struct lttng_ptr_heap *heap)
{
-
k
free(heap->ptrs);
+
lttng_kv
free(heap->ptrs);
}
static void heapify(struct lttng_ptr_heap *heap, size_t i)
}
static void heapify(struct lttng_ptr_heap *heap, size_t i)
This page took
0.025045 seconds
and
4
git commands to generate.