public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Chris Mason <mason@suse.de>
To: Andrew Morton <akpm@zip.com.au>
Cc: Andrea Arcangeli <andrea@suse.de>,
	Johan Ekenberg <johan@ekenberg.se>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	jack@suse.cz, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] Lockups with 2.4.14 and 2.4.16
Date: Fri, 21 Dec 2001 08:29:30 -0500	[thread overview]
Message-ID: <1681982704.1008941370@tiny> (raw)
In-Reply-To: <3C22CC54.D4F5B01@zip.com.au>
In-Reply-To: <3C1A4BB4.EA8C4B45@zip.com.au> ,	<000a01c1829f$75daf7a0$050010ac@FUTURE> <000a01c1829f$75daf7a0$050010ac@FUTURE> <3825380000.1008348567@tiny> <3C1A3652.52B989E4@zip.com.au> <3845670000.1008352380@tiny>,	<3845670000.1008352380@tiny>; from mason@suse.com on Fri, Dec 14, 2001 at 12:53:00PM -0500 <20011214193217.H2431@athlon.random> <3C1A4BB4.EA8C4B45@zip.com.au> <1624652704.1008906979@tiny> <3C22CC54.D4F5B01@zip.com.au>



On Thursday, December 20, 2001 09:44:52 PM -0800 Andrew Morton
<akpm@zip.com.au> wrote:

> Chris Mason wrote:
>> 
>> Ok, I'm ignoring the shrink_dcache issue I mentioned earlier today
>> for the moment.  It has not shown up in any of the traces from Johan's
>> machines, and I'd like to get his problems fixed before moving on to
>> the (much) rarer iput problems.
>> 
> 
> OK, looks like it'll fix the problem.   Which you previously described
> as:

Hi Andrew, thanks for giving this a look.

> A similar deadlock could occur at writepage().  ext3 goes to some
> lengths to avoid blocking on the journal at writepage - if the caller
> is PF_MEMALLOC and we can't unblockingly start a transaction we redirty
> the page and bale.
> 
> It seems that reiserfs can also start a transaction at writepage.  How
> come it doesn't deadlock there?

I've got patches for this too, I'll them integrated after new year's.  It
seems like the quota semaphore makes the deadlock much more likely with the
quota code.

> 
> A couple of broad-sweep things:
> 
> - The VM refuses to write out swapcached pages when called without
>   __GFP_FS.  For swap devices (as opposed to swapfiles), it appears
>   that we could in fact perform the swapout, which would help, but
>   not cure this.

Yes.

> 
> - Where's bdflush?  It should be madly undirtying pages and making
>   the situation better.

bdflush can flush the dirty buffers on the dirty pages, but it leaves the
page dirty.  I almost think we should move the decision about writing the
page under GFP_NOFS to the filesystem (2.5.x).  If the buffers are already
mapped, the page can be written without taking any FS locks at all.

> 
> Neither of which fix the problem with mapped files.  Bring on
> kinoded, I guess.  Maybe.  Did you think about just kicking kupdate
> and letting it sync the inodes?

The current kupdate won't touch the unused inode list, and we dive into the
quota code while calling clear_inode while freeing unused inodes.  I could
change kupdate to do what kinoded does, but then kupdate moves away from
being a periodic flusher and changes into something that responds to memory
pressure.

-chris


  parent reply	other threads:[~2001-12-21 13:38 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-12-11 23:29 Lockups with 2.4.14 and 2.4.16 Johan Ekenberg
2001-12-11 23:47 ` Alan Cox
2001-12-11 23:56   ` SV: " Johan Ekenberg
2001-12-12  0:36     ` Alan Cox
2001-12-14 16:49     ` Chris Mason
2001-12-14 17:26       ` Andrew Morton
2001-12-14 17:53         ` Chris Mason
2001-12-14 18:32           ` Andrea Arcangeli
2001-12-14 18:55             ` Chris Mason
2001-12-14 18:57             ` Andrew Morton
2001-12-14 19:16               ` Andrea Arcangeli
2001-12-20 13:29               ` Chris Mason
     [not found]               ` <1624652704.1008906979@tiny>
     [not found]                 ` <3C22CC54.D4F5B01@zip.com.au>
2001-12-21 13:29                   ` Chris Mason [this message]
2001-12-14 19:26           ` Jan Kara
2001-12-14 19:21         ` Jan Kara
2001-12-12  0:56   ` SV: " Johan Ekenberg
2001-12-12  1:22     ` Alan Cox
2001-12-12  0:12 ` Brad Dameron
2001-12-12  0:47 ` Chris Mason
2001-12-12  1:01   ` SV: " Johan Ekenberg
2001-12-12  1:10     ` Hans Reiser
2001-12-12  1:15     ` Chris Mason

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=1681982704.1008941370@tiny \
    --to=mason@suse.de \
    --cc=akpm@zip.com.au \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=andrea@suse.de \
    --cc=jack@suse.cz \
    --cc=johan@ekenberg.se \
    --cc=linux-kernel@vger.kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox