etnaviv supports the following pipe types: ETNA_PIPE_3D 0x00 ETNA_PIPE_2D 0x01 ETNA_PIPE_VG 0x02 The current used value of 4 for ETNA_MAX_PIPES is wrong and caueses some troubles in the combination with perf counters. Lets have a look at the function etnaviv_pm_query_dom(..): If domain->pipe is 3 then we are one element beyond the end of the array. The easiest way to fix this issue is to provide a correct value for ETNA_MAX_PIPES. Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> Fixes: a8c21a5451d8 ("drm/etnaviv: add initial etnaviv DRM driver") Cc: stable@xxxxxxxxxxxxxxx Signed-off-by: Christian Gmeiner <christian.gmeiner@xxxxxxxxx> --- include/uapi/drm/etnaviv_drm.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/uapi/drm/etnaviv_drm.h b/include/uapi/drm/etnaviv_drm.h index 09d0df8b71c5..5a62228298d1 100644 --- a/include/uapi/drm/etnaviv_drm.h +++ b/include/uapi/drm/etnaviv_drm.h @@ -75,7 +75,7 @@ struct drm_etnaviv_timespec { #define ETNAVIV_PARAM_GPU_NUM_VARYINGS 0x1a #define ETNAVIV_PARAM_SOFTPIN_START_ADDR 0x1b -#define ETNA_MAX_PIPES 4 +#define ETNA_MAX_PIPES 3 struct drm_etnaviv_param { __u32 pipe; /* in */ -- 2.23.0