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: Laura Abbott <lauraa@codeaurora.org> [jstultz: modified patch to apply to staging directory] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
0de9577b5e
commit
2900cd7671
@ -232,7 +232,7 @@ static void ion_handle_destroy(struct kref *kref)
|
||||
mutex_lock(&client->lock);
|
||||
|
||||
mutex_lock(&buffer->lock);
|
||||
while (buffer->kmap_cnt)
|
||||
while (handle->kmap_cnt)
|
||||
ion_handle_kmap_put(handle);
|
||||
mutex_unlock(&buffer->lock);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user