On Thu, 25 Oct 2018, Sasha Levin wrote:

> >> cleaner_kthread() is not marked freezable, and therefore calling
> >> try_to_freeze() in its context is a pointless no-op.
> >>
> >> In addition to that, as has been clearly demonstrated by 80ad623edd2d
> >> ("Revert "btrfs: clear PF_NOFREEZE in cleaner_kthread()"), it's perfectly
> >> valid / legal for cleaner_kthread() to stay scheduled out in an arbitrary
> >> place during suspend (in that particular example that was waiting for
> >> reading of extent pages), so there is no need to leave any traces of
> >> freezer in this kthread.
> >>
> >> Fixes: 80ad623edd2d ("Revert "btrfs: clear PF_NOFREEZE in
> >> Fixes: cleaner_kthread()")
> >> Fixes: 696249132158 ("btrfs: clear PF_NOFREEZE in cleaner_kthread()")
> >> Signed-off-by: Jiri Kosina <jkos...@suse.cz>
> >> Signed-off-by: David Sterba <dste...@suse.com>
> >> Signed-off-by: Sasha Levin <sas...@kernel.org>
> >
> >IIRC it was some preparatory work for livepatching.  I did a quick check
> >if this is safe for 4.4 and would say yes, but the patch does not fix
> >anything so IMO this does not need to go to stable.
> 
> Doesn't that also affect hibernation and such?

This patch just removes pointless try_to_freeze(), that's guaranteed not 
to do anything and return immediately, as the btrfs kthread is not 
freezable.
So I don't think it's needed in stable; the semantics is equivalent before 
and after.

Thanks,

-- 
Jiri Kosina
SUSE Labs

Reply via email to