Re: [RFC PATCH 20/26] UBIFS: add VFS operations

From: Pekka Enberg
Date: Tue Apr 01 2008 - 09:12:44 EST


Hi Artem,

On Tue, Apr 1, 2008 at 3:42 PM, Artem Bityutskiy <dedekind@xxxxxxxxx> wrote:
> > > +static int ubifs_releasepage(struct page *page, gfp_t unused_gfp_flags)
> > > +{
> > > + /*
> > > + * An attempt to release a dirty page without budgeting for it - should
> > > + * not happen.
> > > + */
> > > + ubifs_assert(PageLocked(page));
> > > + if (PageWriteback(page))
> > > + return 0;
> > > + ubifs_assert(PagePrivate(page));
> > > + ubifs_assert(0);
> > > + ClearPagePrivate(page);
> > > + ClearPageChecked(page);
> > > + return 1;
> > > +}
>
> Yeah, this is also a guarding thing. When a dirty page is released
> the budget which was allocated for it has to be freed. If this function
> is called, then the budget was not freed, which must never happen.

So what guarantees that no one calls invalidate_complete_page() or
fallback_migrate_page(), for example?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/