Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751148AbcCKR4R (ORCPT ); Fri, 11 Mar 2016 12:56:17 -0500 Received: from mail-yk0-f173.google.com ([209.85.160.173]:34729 "EHLO mail-yk0-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750702AbcCKR4M (ORCPT ); Fri, 11 Mar 2016 12:56:12 -0500 Date: Fri, 11 Mar 2016 12:56:10 -0500 From: Tejun Heo To: Jan Kara Cc: Peter Chen , Alan Stern , florian@mickler.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, usb-storage@lists.one-eyed-alien.net, Jan Kara , jkosina@suse.cz Subject: Re: Freezable workqueue blocks non-freezable workqueue during the system resume process Message-ID: <20160311175610.GL24046@htj.duckdns.org> References: <20160223032056.GB12256@shlinux2.ap.freescale.net> <20160224072430.GC15452@shlinux2.ap.freescale.net> <20160225220112.GM6092@mtj.duckdns.org> <20160226061920.GA17288@shlinux2.ap.freescale.net> <20160302160058.GA29826@mtj.duckdns.org> <20160303093310.GC2307@quack.suse.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160303093310.GC2307@quack.suse.cz> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1227 Lines: 29 Hello, Jan. On Thu, Mar 03, 2016 at 10:33:10AM +0100, Jan Kara wrote: > > Ugh... that's nasty. I wonder whether the right thing to do is making > > writeback workers non-freezable. IOs are supposed to be blocked from > > lower layer anyway. Jan, what do you think? > > Well no, at least currently IO is not blocked in lower layers AFAIK - for > that you'd need to freeze block devices & filesystems and there are issues At least libata does and I think SCSI does too, but yeah, there probably are drivers which depend on block layer blocking IOs, which btw is a pretty fragile way to go about as upper layers might not be the only source of activities. > with that (Jiri Kosina was the last one which was trying to make this work > AFAIR). And I think you need to stop writeback (and generally any IO) to be > generated so that it doesn't interact in a strange way with device drivers > being frozen. So IMO until suspend freezes filesystems & devices properly > you have to freeze writeback workqueue. I still think the right thing to do is plugging that block layer or low level drivers. It's like we're trying to plug multiple sources when we can plug the point where they come together anyway. Thanks. -- tejun