Commit 2900cd76 authored by Laura Abbott's avatar Laura Abbott Committed by Greg Kroah-Hartman

gpu: ion: Loop on the handle count when destroying

When destroying a handle, all kernel mappings to that handle
should be destroyed. Other handles may still have references
and valid mappings to the buffer underneath which should not
be destroyed. Loop on the handle reference count, not the buffer
reference count to get rid of all kernel mappings for the handle.
Signed-off-by: default avatarLaura Abbott <lauraa@codeaurora.org>
[jstultz: modified patch to apply to staging directory]
Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 0de9577b
...@@ -232,7 +232,7 @@ static void ion_handle_destroy(struct kref *kref) ...@@ -232,7 +232,7 @@ static void ion_handle_destroy(struct kref *kref)
mutex_lock(&client->lock); mutex_lock(&client->lock);
mutex_lock(&buffer->lock); mutex_lock(&buffer->lock);
while (buffer->kmap_cnt) while (handle->kmap_cnt)
ion_handle_kmap_put(handle); ion_handle_kmap_put(handle);
mutex_unlock(&buffer->lock); mutex_unlock(&buffer->lock);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment