[PATCH v4 0/5] Automatic RCU read unlock

Dr. David Alan Gilbert (git) posted 5 patches 4 years, 6 months ago
Test FreeBSD passed
Test docker-mingw@fedora passed
Test asan passed
Test docker-quick@centos7 passed
Test checkpatch passed
Test docker-clang@ubuntu passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20191007143642.301445-1-dgilbert@redhat.com
Maintainers: Richard Henderson <rth@twiddle.net>, Juan Quintela <quintela@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, "Dr. David Alan Gilbert" <dgilbert@redhat.com>
docs/devel/rcu.txt      |  16 +++
exec.c                  | 116 +++++++---------
include/exec/ram_addr.h | 138 +++++++++----------
include/qemu/rcu.h      |  25 ++++
memory.c                |  15 +--
migration/ram.c         | 286 +++++++++++++++++++---------------------
migration/rdma.c        |  57 ++------
7 files changed, 304 insertions(+), 349 deletions(-)
[PATCH v4 0/5] Automatic RCU read unlock
Posted by Dr. David Alan Gilbert (git) 4 years, 6 months ago
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

This patch uses glib's g_auto mechanism to automatically free
rcu_read_lock's at the end of the block.  Given that humans
have a habit of forgetting an error path somewhere it's
best to leave it to the compiler.

v4
  Mark the '_rcu_read_auto_' variable as 'unused'
  to work around a clang bug.


Dr. David Alan Gilbert (5):
  rcu: Add automatically released rcu_read_lock variants
  migration: Fix missing rcu_read_unlock
  migration: Use automatic rcu_read unlock in ram.c
  migration: Use automatic rcu_read unlock in rdma.c
  rcu: Use automatic rc_read unlock in core memory/exec code

 docs/devel/rcu.txt      |  16 +++
 exec.c                  | 116 +++++++---------
 include/exec/ram_addr.h | 138 +++++++++----------
 include/qemu/rcu.h      |  25 ++++
 memory.c                |  15 +--
 migration/ram.c         | 286 +++++++++++++++++++---------------------
 migration/rdma.c        |  57 ++------
 7 files changed, 304 insertions(+), 349 deletions(-)

-- 
2.23.0


Re: [PATCH v4 0/5] Automatic RCU read unlock
Posted by Dr. David Alan Gilbert 4 years, 6 months ago
* Dr. David Alan Gilbert (git) (dgilbert@redhat.com) wrote:
> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
> 
> This patch uses glib's g_auto mechanism to automatically free
> rcu_read_lock's at the end of the block.  Given that humans
> have a habit of forgetting an error path somewhere it's
> best to leave it to the compiler.

Queued

> 
> v4
>   Mark the '_rcu_read_auto_' variable as 'unused'
>   to work around a clang bug.
> 
> 
> Dr. David Alan Gilbert (5):
>   rcu: Add automatically released rcu_read_lock variants
>   migration: Fix missing rcu_read_unlock
>   migration: Use automatic rcu_read unlock in ram.c
>   migration: Use automatic rcu_read unlock in rdma.c
>   rcu: Use automatic rc_read unlock in core memory/exec code
> 
>  docs/devel/rcu.txt      |  16 +++
>  exec.c                  | 116 +++++++---------
>  include/exec/ram_addr.h | 138 +++++++++----------
>  include/qemu/rcu.h      |  25 ++++
>  memory.c                |  15 +--
>  migration/ram.c         | 286 +++++++++++++++++++---------------------
>  migration/rdma.c        |  57 ++------
>  7 files changed, 304 insertions(+), 349 deletions(-)
> 
> -- 
> 2.23.0
> 
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK