@@ -91,7 +91,7 @@ struct a6xx_state_memobj {
91
91
static void * state_kcalloc (struct a6xx_gpu_state * a6xx_state , int nr , size_t objsize )
92
92
{
93
93
struct a6xx_state_memobj * obj =
94
- kzalloc ((nr * objsize ) + sizeof (* obj ), GFP_KERNEL );
94
+ kvzalloc ((nr * objsize ) + sizeof (* obj ), GFP_KERNEL );
95
95
96
96
if (!obj )
97
97
return NULL ;
@@ -819,7 +819,7 @@ static struct msm_gpu_state_bo *a6xx_snapshot_gmu_bo(
819
819
820
820
snapshot -> iova = bo -> iova ;
821
821
snapshot -> size = bo -> size ;
822
- snapshot -> data = kvzalloc ( snapshot -> size , GFP_KERNEL );
822
+ snapshot -> data = state_kcalloc ( a6xx_state , 1 , snapshot -> size );
823
823
if (!snapshot -> data )
824
824
return NULL ;
825
825
@@ -1034,14 +1034,8 @@ static void a6xx_gpu_state_destroy(struct kref *kref)
1034
1034
struct a6xx_gpu_state * a6xx_state = container_of (state ,
1035
1035
struct a6xx_gpu_state , base );
1036
1036
1037
- if (a6xx_state -> gmu_log )
1038
- kvfree (a6xx_state -> gmu_log -> data );
1039
-
1040
- if (a6xx_state -> gmu_hfi )
1041
- kvfree (a6xx_state -> gmu_hfi -> data );
1042
-
1043
1037
list_for_each_entry_safe (obj , tmp , & a6xx_state -> objs , node )
1044
- kfree (obj );
1038
+ kvfree (obj );
1045
1039
1046
1040
adreno_gpu_state_destroy (state );
1047
1041
kfree (a6xx_state );
0 commit comments