mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: David Woodhouse <dwmw2@infradead.org>
To: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
Cc: "David S. Miller" <davem@redhat.com>,
	linux-kernel@vger.kernel.org, sim@netnation.com,
	viro@parcelfarce.linux.theplanet.co.uk
Subject: Re: Linux 2.4.25-pre5
Date: Fri, 16 Jan 2004 07:44:58 +0000	[thread overview]
Message-ID: <1074239098.31120.27.camel@imladris.demon.co.uk> (raw)
In-Reply-To: <Pine.LNX.4.58L.0401152110020.17528@logos.cnet>

On Thu, 2004-01-15 at 21:23 -0200, Marcelo Tosatti wrote:
> On Thu, 15 Jan 2004, David S. Miller wrote:
> 
> > On Thu, 15 Jan 2004 18:19:40 -0200 (BRST)
> > Marcelo Tosatti <marcelo.tosatti@cyclades.com> wrote:
> >
> > > Here is -pre5.
> >
> > If this is anything like the current 2.4.x BK tree, people will need this
> > in order to get a successful build:
> >
> > --- Makefile.~1~	Thu Jan 15 12:13:10 2004
> > +++ Makefile	Thu Jan 15 12:13:12 2004
> > @@ -1,6 +1,6 @@
> >  VERSION = 2
> >  PATCHLEVEL = 4
> > -UBLEVEL = 25
> > +SUBLEVEL = 25
> >  EXTRAVERSION = -pre5
> >
> >  KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
> 
> I forgot to "bk push" (I never forget, you know).
> 
> Sir Woodhouse,
> 
> I just managed to crash a SMP box running dbench.
> 
> I guess this is related to your deadlock fix?

Oh bugger. It's all very well observing that it's OK to leave ourselves
on the wait queue because the inode is about to be freed..... but the
wait queue doesn't get reinitialised again when the inode is allocated
again from the same slab page. Someone _else_ inherits the stale wait
queue.

I hereby declare myself to be Today's Official Mr Fuck All Good.

===== fs/inode.c 1.48 vs edited =====
--- 1.48/fs/inode.c	Wed Jan 14 20:51:18 2004
+++ edited/fs/inode.c	Fri Jan 16 07:43:14 2004
@@ -96,6 +96,7 @@
 	if (inode) {
 		struct address_space * const mapping = &inode->i_data;
 
+		init_waitqueue_head(&inode->i_wait);
 		inode->i_sb = sb;
 		inode->i_dev = sb->s_dev;
 		inode->i_blkbits = sb->s_blocksize_bits;
@@ -147,7 +148,6 @@
 
 void __inode_init_once(struct inode *inode)
 {
-	init_waitqueue_head(&inode->i_wait);
 	INIT_LIST_HEAD(&inode->i_hash);
 	INIT_LIST_HEAD(&inode->i_data.clean_pages);
 	INIT_LIST_HEAD(&inode->i_data.dirty_pages);


-- 
dwmw2



  reply	other threads:[~2004-01-16  7:45 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-15 20:19 Marcelo Tosatti
2004-01-15 22:55 ` David S. Miller
2004-01-15 23:12   ` Arnaldo Carvalho de Melo
2004-01-15 23:01     ` David S. Miller
2004-01-15 23:23       ` Arnaldo Carvalho de Melo
2004-01-15 23:23   ` Marcelo Tosatti
2004-01-16  7:44     ` David Woodhouse [this message]
2004-01-16  8:45       ` Andrew Morton
2004-01-16  8:58         ` David Woodhouse
2004-01-19 15:15 ` Geert Uytterhoeven
2004-02-02 15:39   ` [PATCH] fs/inode.c warning if !HIGHMEM (was: Re: Linux 2.4.25-pre5) Geert Uytterhoeven

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=1074239098.31120.27.camel@imladris.demon.co.uk \
    --to=dwmw2@infradead.org \
    --cc=davem@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcelo.tosatti@cyclades.com \
    --cc=sim@netnation.com \
    --cc=viro@parcelfarce.linux.theplanet.co.uk \
    /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

all inboxes | Powered by JetHome®