drm/vc4: Add a BO cache.
authorEric Anholt <eric@anholt.net>
Sat, 10 Oct 2015 03:25:07 +0000 (20:25 -0700)
committerEric Anholt <eric@anholt.net>
Tue, 8 Dec 2015 04:01:56 +0000 (20:01 -0800)
commitc826a6e1064419f78855463cf29ce9e8b9d25bf4
tree5e14c5eccefaaf37b87684737e852ba87a621d89
parent10028c5ab107d3765c7fc282b6c45324d1602155
drm/vc4: Add a BO cache.

We need to allocate new BOs in the kernel as part of each frame, but
the CMA allocator is way too slow for that.  As an optimization, keep
track of recently-freed BOs and reuse them, with a 1 second timeout to
fully free them back to the system.

This improves 3D performance by about 15%.

Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/vc4/vc4_bo.c
drivers/gpu/drm/vc4/vc4_debugfs.c
drivers/gpu/drm/vc4/vc4_drv.c
drivers/gpu/drm/vc4/vc4_drv.h