diff options
author | Carlos Llamas <cmllamas@google.com> | 2023-05-02 20:12:19 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-05-30 14:03:19 +0100 |
commit | d7cee853bcb07e02c6c5a65037eac2ab081c4337 (patch) | |
tree | cc75f21c354324a2fc6513bf84d4908a6919bf49 /block | |
parent | 72a94f8c14a1e537cb50c1dcd48c6f49575478ed (diff) | |
download | linux-d7cee853bcb07e02c6c5a65037eac2ab081c4337.tar.gz |
binder: add lockless binder_alloc_(set|get)_vma()
commit 0fa53349c3acba0239369ba4cd133740a408d246 upstream. Bring back the original lockless design in binder_alloc to determine whether the buffer setup has been completed by the ->mmap() handler. However, this time use smp_load_acquire() and smp_store_release() to wrap all the ordering in a single macro call. Also, add comments to make it evident that binder uses alloc->vma to determine when the binder_alloc has been fully initialized. In these scenarios acquiring the mmap_lock is not required. Fixes: a43cfc87caaf ("android: binder: stop saving a pointer to the VMA") Cc: Liam Howlett <liam.howlett@oracle.com> Cc: Suren Baghdasaryan <surenb@google.com> Cc: stable@vger.kernel.org Signed-off-by: Carlos Llamas <cmllamas@google.com> Link: https://lore.kernel.org/r/20230502201220.1756319-3-cmllamas@google.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions