[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2236FBA76BA1254E88B949DDB74E612B41C4EF59@IRSMSX102.ger.corp.intel.com>
Date: Wed, 22 Feb 2017 17:19:49 +0000
From: "Reshetova, Elena" <elena.reshetova@...el.com>
To: David Howells <dhowells@...hat.com>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-afs@...ts.infradead.org" <linux-afs@...ts.infradead.org>,
"peterz@...radead.org" <peterz@...radead.org>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
Hans Liljestrand <ishkamiel@...il.com>,
"Kees Cook" <keescook@...omium.org>,
David Windsor <dwindsor@...il.com>
Subject: RE: [PATCH 1/4] fs, afs: convert afs_cell.usage from atomic_t to
refcount_t
> Elena Reshetova <elena.reshetova@...el.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.
Powered by blists - more mailing lists