[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <84144f020804010612iec1c2d9xc9096f8cc3cd9d4d@mail.gmail.com>
Date: Tue, 1 Apr 2008 16:12:33 +0300
From: "Pekka Enberg" <penberg@...helsinki.fi>
To: "Artem Bityutskiy" <dedekind@...dex.ru>
Cc: "Artem Bityutskiy" <Artem.Bityutskiy@...ia.com>,
LKML <linux-kernel@...r.kernel.org>,
"Adrian Hunter" <ext-adrian.hunter@...ia.com>
Subject: Re: [RFC PATCH 20/26] UBIFS: add VFS operations
Hi Artem,
On Tue, Apr 1, 2008 at 3:42 PM, Artem Bityutskiy <dedekind@...dex.ru> 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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists