On Mon, Sep 15, 2025 at 11:16 AM Dorinda Bassey <dbas...@redhat.com> wrote:
>
> Hi Albert and Michael,
>
> seems this patch fell through the cracks, It was posted but never picked up. 
> Could you help push it? thanks!

I do not remember this patch! Great that you checked, as this fixes a
legitimate issue. Hopefully will get integrated this time.

>
> BR,
> Dorinda.
>
> On Fri, Nov 8, 2024 at 10:29 AM Stefano Garzarella <sgarz...@redhat.com> 
> wrote:
>>
>> On Thu, Nov 07, 2024 at 07:00:31PM +0100, Dorinda Bassey wrote:
>> >In `virtio_add_resource` function, the UUID used as a key for
>> >`g_hash_table_insert` was temporary, which could lead to
>> >invalid lookups when accessed later. This patch ensures that
>> >the UUID remains valid by duplicating it into a newly allocated
>> >memory space. The value is then inserted into the hash table
>> >with this persistent UUID key to ensure that the key stored in
>> >the hash table remains valid as long as the hash table entry
>> >exists.
>> >
>> >Fixes: faefdba847 ("hw/display: introduce virtio-dmabuf")
>> >
>> >Signed-off-by: Dorinda Bassey <dbas...@redhat.com>
>> >---
>> > hw/display/virtio-dmabuf.c | 6 ++++--
>> > 1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> Reviewed-by: Stefano Garzarella <sgarz...@redhat.com>

Reviewed-by: Albert Esteve <aest...@redhat.com>

>>
>> >
>> >diff --git a/hw/display/virtio-dmabuf.c b/hw/display/virtio-dmabuf.c
>> >index 3dba4577ca7..5e0395be77c 100644
>> >--- a/hw/display/virtio-dmabuf.c
>> >+++ b/hw/display/virtio-dmabuf.c
>> >@@ -35,11 +35,13 @@ static bool virtio_add_resource(QemuUUID *uuid, 
>> >VirtioSharedObject *value)
>> >     if (resource_uuids == NULL) {
>> >         resource_uuids = g_hash_table_new_full(qemu_uuid_hash,
>> >                                                uuid_equal_func,
>> >-                                               NULL,
>> >+                                               g_free,
>> >                                                g_free);
>> >     }
>> >     if (g_hash_table_lookup(resource_uuids, uuid) == NULL) {
>> >-        g_hash_table_insert(resource_uuids, uuid, value);
>> >+        g_hash_table_insert(resource_uuids,
>> >+                            g_memdup2(uuid, sizeof(*uuid)),
>> >+                            value);
>> >     } else {
>> >         result = false;
>> >     }
>> >--
>> >2.47.0
>> >
>>


Reply via email to