On Fri, Oct 26, 2018 at 08:58:57AM +0200, Jiri Kosina wrote:
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 <[email protected]> >> Signed-off-by: David Sterba <[email protected]> >> Signed-off-by: Sasha Levin <[email protected]> > >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.
Gotcha. I'll drop it. Thank you! -- Thanks, Sasha

