> Elena Reshetova <elena.reshet...@intel.com> wrote: > > > refcount_t type and corresponding API should be > > used instead of atomic_t when the variable is used as > > a reference counter. This allows to avoid accidental > > refcounter overflows that might lead to use-after-free > > situations. > > This causes an assertion failure because cells aren't immediately destroyed > when their refcount reaches 0, but may be resurrected provided the cache lock > is held. However, attempting to increment the 0 refcount does nothing, not > even giving a warning.
This is strange, it is supposed to give a warning I think now when it is even not inlined. Peter, am I confusing smth? > > So please place a hold on this patch. I will check the other AFS patches > also. > Thank you very much David for testing the patches! I guess for this one and other two patches it means that if we want to do the atomic_t --> refcount_t conversions, we need to do +1 on the whole counting scheme to avoid issues around reaching zero. Do you see this approach reasonable? I can give it a try, if it makes sense in your opinion. Best Regards, Elena.