All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Kirby <sim@netnation.com>
To: Linux-raid maillist <linux-raid@vger.kernel.org>
Cc: Jens Axboe <axboe@suse.de>, Neil Brown <neilb@cse.unsw.edu.au>,
	"Kevin P. Fleming" <kpfleming@backtobasicsmgmt.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Linus Torvalds <torvalds@osdl.org>,
	linux-lvm@sistina.com
Subject: [linux-lvm] Re: Reproducable OOPS with MD RAID-5 on 2.6.0-test11
Date: Thu Dec  4 08:58:01 2003	[thread overview]
Message-ID: <20031204011236.GA5622@simulated.ca> (raw)
In-Reply-To: <Pine.LNX.4.58.0312021009070.1519@home.osdl.org>

On Tue, Dec 02, 2003 at 10:23:17AM -0800, Linus Torvalds wrote:

> On Tue, 2 Dec 2003, Jens Axboe wrote:
> >
> > Smells like a bio stacking problem in raid/dm then. I'll take a quick
> > look and see if anything obvious pops up, otherwise the maintainers of
> > those areas should take a closer look.
> 
> There are several other problem reports which start to smell like md/raid.

Btw, I had trouble creating a linear array (probably not very common)
with size > 2 TB.  I expected it to just complain, but it ended up
resulting in hard lockups.  With a slight size change (removed one
drive), it ended up printing a double fault Oops, and all sorts of neat
stuff.  I suspect the hashing was overflowing and writing bits in
unexpected places.

In any event, this patch against 2.6.0-test11 compiles without warnings,
boots, and (bonus) actually works:

--- drivers/md/linear.c.orig	2003-10-29 08:16:35.000000000 -0800
+++ drivers/md/linear.c	2003-12-03 16:19:59.000000000 -0800
@@ -214,10 +214,11 @@
 		char b[BDEVNAME_SIZE];
 
 		printk("linear_make_request: Block %llu out of bounds on "
-			"dev %s size %ld offset %ld\n",
+			"dev %s size %lld offset %lld\n",
 			(unsigned long long)block,
 			bdevname(tmp_dev->rdev->bdev, b),
-			tmp_dev->size, tmp_dev->offset);
+			(unsigned long long)tmp_dev->size,
+			(unsigned long long)tmp_dev->offset);
 		bio_io_error(bio, bio->bi_size);
 		return 0;
 	}
--- include/linux/raid/linear.h.orig	2003-11-26 12:45:44.000000000 -0800
+++ include/linux/raid/linear.h	2003-12-03 16:18:00.000000000 -0800
@@ -5,8 +5,8 @@
 
 struct dev_info {
 	mdk_rdev_t	*rdev;
-	unsigned long	size;
-	unsigned long	offset;
+	sector_t	size;
+	sector_t	offset;
 };
 
 typedef struct dev_info dev_info_t;

Simon-

WARNING: multiple messages have this Message-ID (diff)
From: Simon Kirby <sim@netnation.com>
To: Linux-raid maillist <linux-raid@vger.kernel.org>
Cc: Jens Axboe <axboe@suse.de>, Neil Brown <neilb@cse.unsw.edu.au>,
	"Kevin P. Fleming" <kpfleming@backtobasicsmgmt.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Linus Torvalds <torvalds@osdl.org>,
	linux-lvm@sistina.com
Subject: Re: Reproducable OOPS with MD RAID-5 on 2.6.0-test11
Date: Wed, 3 Dec 2003 17:12:36 -0800	[thread overview]
Message-ID: <20031204011236.GA5622@simulated.ca> (raw)
In-Reply-To: <Pine.LNX.4.58.0312021009070.1519@home.osdl.org>

On Tue, Dec 02, 2003 at 10:23:17AM -0800, Linus Torvalds wrote:

> On Tue, 2 Dec 2003, Jens Axboe wrote:
> >
> > Smells like a bio stacking problem in raid/dm then. I'll take a quick
> > look and see if anything obvious pops up, otherwise the maintainers of
> > those areas should take a closer look.
> 
> There are several other problem reports which start to smell like md/raid.

Btw, I had trouble creating a linear array (probably not very common)
with size > 2 TB.  I expected it to just complain, but it ended up
resulting in hard lockups.  With a slight size change (removed one
drive), it ended up printing a double fault Oops, and all sorts of neat
stuff.  I suspect the hashing was overflowing and writing bits in
unexpected places.

In any event, this patch against 2.6.0-test11 compiles without warnings,
boots, and (bonus) actually works:

--- drivers/md/linear.c.orig	2003-10-29 08:16:35.000000000 -0800
+++ drivers/md/linear.c	2003-12-03 16:19:59.000000000 -0800
@@ -214,10 +214,11 @@
 		char b[BDEVNAME_SIZE];
 
 		printk("linear_make_request: Block %llu out of bounds on "
-			"dev %s size %ld offset %ld\n",
+			"dev %s size %lld offset %lld\n",
 			(unsigned long long)block,
 			bdevname(tmp_dev->rdev->bdev, b),
-			tmp_dev->size, tmp_dev->offset);
+			(unsigned long long)tmp_dev->size,
+			(unsigned long long)tmp_dev->offset);
 		bio_io_error(bio, bio->bi_size);
 		return 0;
 	}
--- include/linux/raid/linear.h.orig	2003-11-26 12:45:44.000000000 -0800
+++ include/linux/raid/linear.h	2003-12-03 16:18:00.000000000 -0800
@@ -5,8 +5,8 @@
 
 struct dev_info {
 	mdk_rdev_t	*rdev;
-	unsigned long	size;
-	unsigned long	offset;
+	sector_t	size;
+	sector_t	offset;
 };
 
 typedef struct dev_info dev_info_t;

Simon-

  reply	other threads:[~2003-12-04  8:58 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-01 14:06 Reproducable OOPS with MD RAID-5 on 2.6.0-test11 Kevin P. Fleming
2003-12-01 14:11 ` Jens Axboe
2003-12-01 14:15   ` Kevin P. Fleming
2003-12-01 15:51     ` Jens Axboe
2003-12-01 22:04       ` [linux-lvm] " Kevin P. Fleming
2003-12-02  4:02         ` Kevin P. Fleming
2003-12-02  4:15         ` Mike Fedyk
2003-12-02  7:51           ` [linux-lvm] " Mike Fedyk
2003-12-02  7:13           ` Kevin P. Fleming
2003-12-02 13:11             ` Kevin P. Fleming
2003-12-02  7:51         ` [linux-lvm] " Jens Axboe
2003-12-02  8:27           ` Jens Axboe
2003-12-02  7:51           ` [linux-lvm] " Nathan Scott
2003-12-02 10:10             ` Nathan Scott
2003-12-02  7:16             ` [linux-lvm] " Kevin P. Fleming
2003-12-02 13:15               ` Kevin P. Fleming
2003-12-02 13:15               ` Kevin P. Fleming
2003-12-03  3:32             ` Nathan Scott
2003-12-03  7:42               ` [linux-lvm] " Nathan Scott
2003-12-03 11:35               ` Linus Torvalds
2003-12-03 17:13                 ` Linus Torvalds
2003-12-02 18:23           ` Linus Torvalds
2003-12-04  1:12             ` Simon Kirby [this message]
2003-12-04  8:58               ` [linux-lvm] " Simon Kirby
2003-12-04  1:23               ` Linus Torvalds
2003-12-04  8:58                 ` [linux-lvm] " Linus Torvalds
2003-12-04  4:31                 ` Simon Kirby
2003-12-04  8:58                   ` [linux-lvm] " Simon Kirby
2003-12-05  6:55                   ` Theodore Ts'o
2003-12-05  7:17                     ` [linux-lvm] " Theodore Ts'o
2003-12-04 20:53                 ` Herbert Xu
2003-12-04 21:06                   ` Linus Torvalds
2003-12-01 23:06   ` Reproducable OOPS with MD RAID-5 on 2.6.0-test11 - with XFS Neil Brown

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=20031204011236.GA5622@simulated.ca \
    --to=sim@netnation.com \
    --cc=axboe@suse.de \
    --cc=kpfleming@backtobasicsmgmt.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-lvm@sistina.com \
    --cc=linux-raid@vger.kernel.org \
    --cc=neilb@cse.unsw.edu.au \
    --cc=torvalds@osdl.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 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.