Re: [PATCH 03/13] vfio/mdev: simplify mdev_type handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jun 14, 2022 at 10:06:16AM +0000, Tian, Kevin wrote:
> > +	gvt->mdev_types = kcalloc(num_types, sizeof(*gvt->mdev_types),
> > +			     GFP_KERNEL);
> > +	if (!gvt->mdev_types) {
> > +		kfree(gvt->types);
> > +		return -ENOMEM;
> > +	}
> > +
> >  	min_low = MB_TO_BYTES(32);
> >  	for (i = 0; i < num_types; ++i) {
> >  		if (low_avail / vgpu_types[i].low_mm == 0)
> > @@ -150,19 +157,21 @@ int intel_gvt_init_vgpu_types(struct intel_gvt *gvt)
> >  						   high_avail /
> > vgpu_types[i].high_mm);
> 
> there is a memory leak a few lines above:
> 
> if (vgpu_types[i].weight < 1 ||
> 	vgpu_types[i].weight > VGPU_MAX_WEIGHT)
> 	return -EINVAL;
> 
> both old code and this patch forgot to free the buffers upon error.

Yeah.  I'll add a patch to the beginning of the series to fix the
existing leak and will then make sure to not leak the new allocation
either.



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux