On Mon, Feb 18, 2013 at 02:06:56PM +0800, Mark Zhang wrote: > On 02/14/2013 12:05 AM, Thierry Reding wrote: > > Add support for the B and C planes which support RGB and YUV pixel > > formats and can be used as overlays or hardware cursor. Currently > > only 32-bit RGBA pixel formats are advertised. > > > > Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxxxxxxxxxx> > [...] > > +static int tegra_dc_add_planes(struct drm_device *drm, struct tegra_dc *dc) > > +{ > > + unsigned int i; > > + int err = 0; > > + > > + for (i = 0; i < 2; i++) { > > + struct tegra_plane *plane; > > + > > + plane = devm_kzalloc(drm->dev, sizeof(*plane), GFP_KERNEL); > > Using "devm_kzalloc" here seems like not a good idea. Everytime plane > disable or crtc disable, we should free "struct tegra_plane" which is > allocated here. But the memory which devm_kzalloc allocates is only > freed when the driver detach. This makes lots of memory can't be > recycled when the plane enable/disable frequently. Why would we want to do that? I don't think doing so would even work, since the planes are resources that need to be registered with the DRM core and therefore can't be allocated on-demand. Thierry
Attachment:
pgp6VWF5P1ZQU.pgp
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel