Re: [PATCH 1/2] fs: ext4: use BUG_ON if writepage call comes from direct reclaim

From: Michal Hocko
Date: Wed Jul 04 2018 - 10:03:14 EST


On Tue 03-07-18 10:05:04, Yang Shi wrote:
>
>
> On 7/3/18 3:39 AM, Theodore Y. Ts'o wrote:
> > On Tue, Jul 03, 2018 at 12:11:18PM +0800, Yang Shi wrote:
> > > direct reclaim doesn't write out filesystem page, only kswapd could do
> > > it. So, if the call comes from direct reclaim, it is definitely a bug.
> > >
> > > And, Mel Gormane also mentioned "Ultimately, this will be a BUG_ON." In
> > > commit 94054fa3fca1fd78db02cb3d68d5627120f0a1d4 ("xfs: warn if direct
> > > reclaim tries to writeback pages").
> > >
> > > Although it is for xfs, ext4 has the similar behavior, so elevate
> > > WARN_ON to BUG_ON.
> > >
> > > And, correct the comment accordingly.
> > >
> > > Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
> > > Cc: "Theodore Ts'o" <tytso@xxxxxxx>
> > > Cc: Andreas Dilger <adilger.kernel@xxxxxxxxx>
> > > Signed-off-by: Yang Shi <yang.shi@xxxxxxxxxxxxxxxxx>
> > What's the upside of crashing the kernel if the file sytsem can handle it?
>
> I'm not sure if it is a good choice to let filesystem handle such vital VM
> regression. IMHO, writing out filesystem page from direct reclaim context is
> a vital VM bug. It means something is definitely wrong in VM. It should
> never happen.

Could you be more specific about the vital part please? Issuing
writeback from the direct reclaim surely can be sub-optimal. But since
we have quite a large stacks it shouldn't overflow immediately even for
more complex storage setups. So what is the _vital_ bug here?
--
Michal Hocko
SUSE Labs