All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Pavel Machek <pavel@ucw.cz>
Cc: Dave Chinner <david@fromorbit.com>, Jan Kara <jack@suse.cz>,
	linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] fs / ext3: Always unlock updates in ext3_freeze()
Date: Thu, 25 Aug 2011 16:33:21 +0200	[thread overview]
Message-ID: <201108251633.21372.rjw@sisk.pl> (raw)
In-Reply-To: <20110825134956.GA10476@ucw.cz>

On Thursday, August 25, 2011, Pavel Machek wrote:
> Hi!
> 
> > > > > The problem really isn't XFS specific, nor is it new - the fact is
> > > > > that any filesystem that has registered a shrinker or can do async
> > > > > work in the background post-sync is vulnerable to this problem. It's
> > > > 
> > > > Should we avoid calling shrinkers while hibernating?
> > > 
> > > If you like getting random OOM problems when hibernating, then go
> > > for it.  Besides, shrinkers are used for more than just filesystems,
> > > so you might find you screw entire classes of users by doing this
> > > (eg everyone using intel graphics and 3D).
> > > 
> > > > Or put BUG_ON()s into filesystem shrinkers so that this can not
> > > > happen?
> > > 
> > > Definitely not. If your concern is filesystem shrinkers and you want
> > > a large hammer to hit the problem with then do your hibernate
> > > image allocation wih GFP_NOFS and the filesystem shrinkers will
> > > abort without doing anything.
> > 
> > I think we can do that, actually.
> 
> I believe we should, yes. Question is if it helps much, because
> various drivers (and userspace in case uswsusp?) will still trigger
> GFP_KERNEL allocations.
> 
> Something like this?
> 
> --- snapshot.c.ofic	2011-08-25 15:48:41.000000000 +0200
> +++ snapshot.c	2011-08-25 15:49:07.000000000 +0200
> @@ -1107,7 +1107,7 @@
>  
>  /* Helper functions used for the shrinking of memory. */
>  
> -#define GFP_IMAGE	(GFP_KERNEL | __GFP_NOWARN)
> +#define GFP_IMAGE	(GFP_NODS | __GFP_NOWARN)

Surely GFP_NOFS?

>  
>  /**
>   * preallocate_image_pages - Allocate a number of pages for hibernation image
> 
> 
> 


      reply	other threads:[~2011-08-25 14:31 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-11 21:29 [PATCH] Rafael J. Wysocki
2011-08-11 21:31 ` [PATCH] fs / ext3: Always unlock updates in ext3_freeze() Rafael J. Wysocki
2011-08-15 12:22   ` Jan Kara
2011-08-15 18:09     ` Rafael J. Wysocki
2011-08-15 20:58       ` Jan Kara
2011-08-15 22:07         ` Rafael J. Wysocki
2011-08-16  0:09         ` Dave Chinner
2011-08-16 18:20           ` Rafael J. Wysocki
     [not found]           ` <20110822130045.GC11264@atrey.karlin.mff.cuni.cz>
2011-08-22 23:13             ` Dave Chinner
2011-08-23 22:18               ` Rafael J. Wysocki
2011-08-25 13:49                 ` Pavel Machek
2011-08-25 14:33                   ` Rafael J. Wysocki [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201108251633.21372.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=david@fromorbit.com \
    --cc=jack@suse.cz \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pavel@ucw.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.