diff options
author | Kirill Artamonov <kartamonov@nvidia.com> | 2011-06-26 21:37:18 +0300 |
---|---|---|
committer | Annamaria Pyreddy <apyreddy@nvidia.com> | 2011-08-19 16:43:42 -0700 |
commit | 48d10f659a21fd6d0dff5e073663f9689b549db4 (patch) | |
tree | d54fa117c1c2918a1678320247e496cce5ee9d92 /drivers/video/tegra/nvmap/nvmap.h | |
parent | 9d650429b634914e0705c37d84a9cfa44375391a (diff) |
video: tegra: nvmap: fix GART pin lockupstegra-10.11.14
Fix GART lockups caused by fragmentation by evicting
mapped areas from iovm space after unsuccessful array
pinning attempt.
Fix double unpin error happening during interrupted
submit.
Fix possible sleep in atomic context in iovmm code
(semaphore inside spinlock) by replacing spinlock
with mutex.
Fix race between handle_unpin and pin_handle.
bug 838579
bug 838073
bug 818058
bug 844307
Conflicts:
drivers/video/tegra/nvmap/nvmap_mru.c
Reviewed-on: http://git-master/r/38430
(cherry picked from commit 4a4cae3323d3287e77fdc504e38656974ef24848)
Change-Id: I385913569ef455a1ceb5083829959de24f5309a7
Reviewed-on: http://git-master/r/47832
Reviewed-by: Andre Sihera <asihera@nvidia.com>
Tested-by: Andre Sihera <asihera@nvidia.com>
Reviewed-by: Kirill Artamonov <kartamonov@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'drivers/video/tegra/nvmap/nvmap.h')
-rw-r--r-- | drivers/video/tegra/nvmap/nvmap.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/video/tegra/nvmap/nvmap.h b/drivers/video/tegra/nvmap/nvmap.h index 923ff8fc8d8a..48ea8debb80b 100644 --- a/drivers/video/tegra/nvmap/nvmap.h +++ b/drivers/video/tegra/nvmap/nvmap.h @@ -89,7 +89,7 @@ struct nvmap_share { wait_queue_head_t pin_wait; struct mutex pin_lock; #ifdef CONFIG_NVMAP_RECLAIM_UNPINNED_VM - spinlock_t mru_lock; + struct mutex mru_lock; struct list_head *mru_lists; int nr_mru; #endif |