Messages in this thread | | | Date | Wed, 7 Aug 2013 16:51:25 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH] aoe: adjust ref of head for compound page tails |
| |
On Wed, 7 Aug 2013 19:41:48 -0400 Ed Cashin <ecashin@coraid.com> wrote:
> On Aug 7, 2013, at 5:27 PM, Andrew Morton wrote: > > >> elevated refcount, full stop. > >> > > > > err, no. slab.c uses alloc_pages(), so the underlying page indeed has > > a proper refcount. I'm still not understanding how this situation comes > > about. > > It sounds like it's wrong to give block pages with a zero count,
Depends on your definition of "page". It should be OK to put a _count==0 tail page into a BIO, because the MM knows that it's a tail page and that its refcount actually lives in the head page.
> so why not just have aoe BUG_ON(compound_trans_head(bv->page->_count) == 0) until we're sure nobody does that anymore?
AOE shouldn't be touching ->_count at all. That's why it has the leading underscore. If AOE can stick with the usual interfaces such as page_count(), everything should work?
| |