On Tue, 24 Mar 2020 at 13:25, Peter Maydell <peter.mayd...@linaro.org> wrote:
> On Tue, 24 Mar 2020 at 11:18, Marcel Apfelbaum > <marcel.apfelb...@gmail.com> wrote: > > > > Hi Peter,Yuval > > > > On 3/24/20 1:05 PM, Peter Maydell wrote: > > > So I think we require that the user of a protected-qlist > > > ensures that there are no more users of it before it is > > > destroyed (which is fairly normal semantics), and the code > > > as it stands is correct (ie coverity false-positive). > > > > I agree is a false positive for our case. > > "rdma_protected_qlist_destroy" is called by "mad_fini" which in turn is > > called by "rdma_backend_fini" > > *after* the VM shutdown, at this point there is no active lock user. > > Also, the function coverity queried was rdma_protected_gslist_destroy(), > not rdma_protected_qlist_destroy(). > Yeah but pattern is the same, if we agree to threat it as false-positive then it applies to the two cases. > > I notice that the gslist_destroy function does not destroy > the mutex -- is this an intentional difference ? > No - it is a bug! > > thanks > -- PMM >