[PATCH 4/7] mm/vmalloc: Use a trace_alloc_vmap_area event

From: Uladzislau Rezki (Sony)
Date: Mon Oct 17 2022 - 12:03:05 EST


This is for debug purpose and is called when an allocation
attempt occurs. This event gives some information about:
- a start address of allocated area;
- a size that is requested;
- an align that is required;
- vstart/vend restriction;
- if an allocation fails.

Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
Signed-off-by: Uladzislau Rezki (Sony) <urezki@xxxxxxxxx>
---
mm/vmalloc.c | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index 83b54beb12fa..f4397817ccd7 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -43,6 +43,9 @@
#include <asm/tlbflush.h>
#include <asm/shmparam.h>

+#define CREATE_TRACE_POINTS
+#include <trace/events/vmap.h>
+
#include "internal.h"
#include "pgalloc-track.h"

@@ -1621,6 +1624,8 @@ static struct vmap_area *alloc_vmap_area(unsigned long size,
size, align, vstart, vend);
spin_unlock(&free_vmap_area_lock);

+ trace_alloc_vmap_area(addr, size, align, vstart, vend, addr == vend);
+
/*
* If an allocation fails, the "vend" address is
* returned. Therefore trigger the overflow path.
--
2.30.2