Merge branch develop-3.10
[firefly-linux-kernel-4.4.55.git] / drivers / video / rockchip / rga / rga_drv.c
index d897c8795619c72816e1115f7a934c8393977b66..fe356cf5042edcaefdd5bb103190a801f10323e0 100755 (executable)
@@ -733,10 +733,13 @@ static void rga_del_running_list_timeout(void)
     while(!list_empty(&rga_service.running))
     {
         reg = list_entry(rga_service.running.next, struct rga_reg, status_link);
-
-        if(reg->MMU_base != NULL)
+        
+        if(reg->MMU_len != 0)
         {
-            kfree(reg->MMU_base);
+            if (rga_mmu_buf.back + reg->MMU_len > 2*rga_mmu_buf.size)
+                rga_mmu_buf.back = reg->MMU_len + rga_mmu_buf.size;
+            else
+                rga_mmu_buf.back += reg->MMU_len;
         }
 
         atomic_sub(1, &reg->session->task_running);