Re: [PATCH] libata, freezer: avoid block device removal while system is frozen

Tejun Heo
2013-12-17T12:36:49Z

Hello, Rafael.

On Tue, Dec 17, 2013 at 03:38:05AM +0100, Rafael J. Wysocki wrote:
> On Friday, December 13, 2013 03:40:34 PM Tejun Heo wrote:
> > Hello,
> >
> > So, this is the laughable workaround that I came up with. Seriously,
> > this is tragic. :(
> >
> > Thanks.
> >
> > ------- 8< -------
> > Freezable kthreads and workqueues are fundamentally problematic in
> > that they effectively introduce a big kernel lock widely used in the
> > kernel and have already been the culprit of several deadlock
> > scenarios. This is the latest occurrence.
>
> OK, so I'm too tired now to go through all that, but I'll look at it tomorrow.
>
> The rule of thumb is to get rid of freezable kernel threads in the first
> place if possible anyway if they are causing problems to happen.

Yes, that'd be awesome. In fact, getting rid of all kernel freezables
in non-low-level-drivers would be a great step forward. That said, we
need something easily backportable so I think we probably need this
bandaid for immediate fix for now.

Thanks.

--
tejun