Skip to content

Commit cee2579

Browse files
jiaqingz-devacrnsi-robot
authored andcommitted
dm: virtio-gpu: fix uninitialized memory access
In virtio_gpu_cmd_create_blob() and virtio_gpu_cmd_resource_attach_ backing(), entries may be accessed before initialization. Fix it by using calloc() to allocate it instead of malloc(). Tracked-On: #8439 Signed-off-by: Jiaqing Zhao <[email protected]>
1 parent a9860fa commit cee2579

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

devicemodel/hw/pci/virtio/virtio_gpu.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -810,7 +810,7 @@ virtio_gpu_cmd_resource_attach_backing(struct virtio_gpu_command *cmd)
810810

811811
r2d->iov = iov;
812812
r2d->iovcnt = req.nr_entries;
813-
entries = malloc(req.nr_entries * sizeof(struct virtio_gpu_mem_entry));
813+
entries = calloc(req.nr_entries, sizeof(struct virtio_gpu_mem_entry));
814814
if (!entries) {
815815
free(iov);
816816
resp.type = VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY;
@@ -1256,7 +1256,7 @@ virtio_gpu_cmd_create_blob(struct virtio_gpu_command *cmd)
12561256
r2d->resource_id = req.resource_id;
12571257

12581258
if (req.nr_entries > 0) {
1259-
entries = malloc(req.nr_entries * sizeof(struct virtio_gpu_mem_entry));
1259+
entries = calloc(req.nr_entries, sizeof(struct virtio_gpu_mem_entry));
12601260
if (!entries) {
12611261
pr_err("%s : memory allocation for entries failed.\n", __func__);
12621262
free(r2d);

0 commit comments

Comments
 (0)