Messages in this thread | | | Subject | Re: [PATCH] KVM: Add separate helper for putting borrowed reference to kvm | From | Paolo Bonzini <> | Date | Thu, 28 Nov 2019 14:49:42 +0100 |
| |
On 27/11/19 22:57, Leonardo Bras wrote: > But on the above case, kvm_put_kvm{,_no_destroy}() would be called > with refcount == 1, and if reorder patch is applied, it would not cause > any use-after-free error, even on kvm_put_kvm() case.
I think this is what you're missing: kvm_put_kvm_no_destroy() does not protect against bugs in the code that uses it. It protect against bugs _elsewhere_.
Therefore, kvm_put_kvm_no_destroy() is always a better choice when applicable, because it turns bugs in _other parts of the code_ from use-after-free to WARN+leak.
Paolo
[unhandled content-type:application/pgp-signature] | |