summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/tee/tee_shm.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/tee/tee_shm.c b/drivers/tee/tee_shm.c
index 511eb298949b..6f36da9ee412 100644
--- a/drivers/tee/tee_shm.c
+++ b/drivers/tee/tee_shm.c
@@ -335,9 +335,11 @@ err:
335 idr_remove(&teedev->idr, shm->id); 335 idr_remove(&teedev->idr, shm->id);
336 mutex_unlock(&teedev->mutex); 336 mutex_unlock(&teedev->mutex);
337 } 337 }
338 for (n = 0; n < shm->num_pages; n++) 338 if (shm->pages) {
339 put_page(shm->pages[n]); 339 for (n = 0; n < shm->num_pages; n++)
340 kfree(shm->pages); 340 put_page(shm->pages[n]);
341 kfree(shm->pages);
342 }
341 } 343 }
342 kfree(shm); 344 kfree(shm);
343 teedev_ctx_put(ctx); 345 teedev_ctx_put(ctx);