Re: [PATCH block/for-4.5-fixes] writeback: keep superblock pinned during cgroup writeback association switches

From: Al Viro
Date: Fri Feb 19 2016 - 17:26:19 EST


On Fri, Feb 19, 2016 at 05:15:12PM -0500, Tejun Heo wrote:

> > IOW, while fs shutdown may be async, making it *always* async would be a bad
> > bug. And bumping ->s_active does just that.
> >
> > I'd go for trylock inside that work + making generic_shutdown_super()
> > kill all such works. I assume that it *can* be abandoned in situation
> > when we know that sync_filesystem() is about to be called and that
> > said sync_filesystem() won't, in turn, schedule any such works, of course...
>
> I'll make generic_shutdown_super() to kill all such work items. I
> don't think the work item itself would need further locking tho. Can
> you please elaborate why you thought adding trylock to the work would
> be necessary?

Umm... Not much, except that it would make the life cycle rules a bit
more regular.

Is that code OK with e.g. running in parallel with remounting filesystem r/o?