Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752479AbZIGMwr (ORCPT ); Mon, 7 Sep 2009 08:52:47 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751800AbZIGMwq (ORCPT ); Mon, 7 Sep 2009 08:52:46 -0400 Received: from atrey.karlin.mff.cuni.cz ([195.113.26.193]:47795 "EHLO atrey.karlin.mff.cuni.cz" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750844AbZIGMwq (ORCPT ); Mon, 7 Sep 2009 08:52:46 -0400 Date: Mon, 7 Sep 2009 14:51:30 +0200 From: Pavel Machek To: OGAWA Hirofumi Cc: Zdenek Kabelac , Christoph Hellwig , "Rafael J. Wysocki" , Linux Kernel Mailing List , linux-mmc@vger.kernel.org, viro@zeniv.linux.org.uk Subject: Re: Regression in suspend to ram in 2.6.31-rc kernels Message-ID: <20090907125130.GA1595@ucw.cz> References: <200908312119.12121.rjw@sisk.pl> <20090903232317.GA6760@lst.de> <87ljkvmt71.fsf@devron.myhome.or.jp> <87iqfx5mss.fsf@devron.myhome.or.jp> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87iqfx5mss.fsf@devron.myhome.or.jp> User-Agent: Mutt/1.5.18 (2008-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1657 Lines: 39 Hi! > >>> Note that when you rever this patch on a current kernel you do actually > >>> get different behvaviour than when going back to before this commit. > >>> > >>> In 2.6.30 we called ->write_super in the various sync functions and > >>> then ->sync_fs, in 2.6.31-rc8 you would not call any syncing at all > >>> anymore. ?I think this patch might just be a symptom for a situation > >>> where the suspend code causes a sync and the mmc driver can't handle > >>> it anymore. > > > > So - here is the console trace from suspend when I've added > > dump_stack() to the fat_sync_fs() (and also added debug prints > > around each call in this function -so its obvious the function is > > actually left - but then it freezes later somewhere.) > > > > It's interesting that 3 calls to sync happens. > > It seems > > 1) sync() (probabry "sync" command) > 2) sync as part of suspend sequence > 3) sync_filesystem() by mmc remove event > > I guess the root-cause of the problem would be 3). However, it would not > be easy to fix, at least, we would need to think about what we want to > do for it. So, to workaround it for now, I've made this patch. MMC driver trying to synchronize filesystems looks like ugly layering violation to me. Why are we doing that? -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/