[PATCH v2] rtla/actions: Fix condition for buffer reallocation

Wander Lairson Costa posted 1 patch 2 weeks, 2 days ago
tools/tracing/rtla/src/actions.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH v2] rtla/actions: Fix condition for buffer reallocation
Posted by Wander Lairson Costa 2 weeks, 2 days ago
The condition to check if the actions buffer needs to be resized was
incorrect. The check `self->size >= self->len` would evaluate to
true on almost every call to `actions_new()`, causing the buffer to
be reallocated unnecessarily each time an action was added.

Fix the condition to `self->len >= self.size`, ensuring
that the buffer is only resized when it is actually full.

Fixes: 6ea082b171e00 ("rtla/timerlat: Add action on threshold feature")
Signed-off-by: Wander Lairson Costa <wander@redhat.com>

---
v1 -> v2
* Put the commit message in imperative language

---
 tools/tracing/rtla/src/actions.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/tracing/rtla/src/actions.c b/tools/tracing/rtla/src/actions.c
index aaf0808125d72..af5f76bd1821b 100644
--- a/tools/tracing/rtla/src/actions.c
+++ b/tools/tracing/rtla/src/actions.c
@@ -49,7 +49,7 @@ actions_destroy(struct actions *self)
 static struct action *
 actions_new(struct actions *self)
 {
-	if (self->size >= self->len) {
+	if (self->len >= self->size) {
 		self->size *= 2;
 		self->list = realloc(self->list, self->size * sizeof(struct action));
 	}
-- 
2.51.0
Re: [PATCH v2] rtla/actions: Fix condition for buffer reallocation
Posted by Tomas Glozar 5 days, 22 hours ago
Steven,

po 15. 9. 2025 v 20:11 odesílatel Wander Lairson Costa
<wander@redhat.com> napsal:
>
> The condition to check if the actions buffer needs to be resized was
> incorrect. The check `self->size >= self->len` would evaluate to
> true on almost every call to `actions_new()`, causing the buffer to
> be reallocated unnecessarily each time an action was added.
>
> Fix the condition to `self->len >= self.size`, ensuring
> that the buffer is only resized when it is actually full.
>
> Fixes: 6ea082b171e00 ("rtla/timerlat: Add action on threshold feature")
> Signed-off-by: Wander Lairson Costa <wander@redhat.com>
>
> ---
> v1 -> v2
> * Put the commit message in imperative language
>
> ---
>  tools/tracing/rtla/src/actions.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>

Can you take this fix as well?

Thank you.

Tomas

PS: This should be all for RTLA now.
Re: [PATCH v2] rtla/actions: Fix condition for buffer reallocation
Posted by Tomas Glozar 2 weeks, 1 day ago
po 15. 9. 2025 v 20:11 odesílatel Wander Lairson Costa
<wander@redhat.com> napsal:
>
> The condition to check if the actions buffer needs to be resized was
> incorrect. The check `self->size >= self->len` would evaluate to
> true on almost every call to `actions_new()`, causing the buffer to
> be reallocated unnecessarily each time an action was added.
>
> Fix the condition to `self->len >= self.size`, ensuring
> that the buffer is only resized when it is actually full.
>
> Fixes: 6ea082b171e00 ("rtla/timerlat: Add action on threshold feature")
> Signed-off-by: Wander Lairson Costa <wander@redhat.com>
>

The blame goes entirely on me for getting confused by my own naming of
the fields. Thank you.

Reviewed-by: Tomas Glozar <tglozar@redhat.com>

Tomas