public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jens Axboe <axboe@suse.de>
To: Chris Caputo <ccaputo@alt.net>
Cc: erich <erich@areca.com.tw>, Andrew Morton <akpm@osdl.org>,
	linux-kernel@vger.kernel.org
Subject: Re: about ll_rw_blk.c of void generic_make_request(struct bio *bio)
Date: Fri, 31 Mar 2006 22:22:03 +0200	[thread overview]
Message-ID: <20060331202202.GH14022@suse.de> (raw)
In-Reply-To: <Pine.LNX.4.64.0603311748010.14317@nacho.alt.net>

On Fri, Mar 31 2006, Chris Caputo wrote:
> On Fri, 31 Mar 2006, Chris Caputo wrote:
> > On Thu, 30 Mar 2006, Jens Axboe wrote:
> > > I can't really say, from my recollection of leafing over lkml emails, I
> > > seem to recall someone saying he hit this with a newer kernel where as
> > > the older one did not?
> > > 
> > > What are the sectors exactly it complains about, eg the full line you
> > > see?
> > 
> > I see:
> > 
> >   attempt to access beyond end of device
> >   sdb1: rw=0, want=134744080, limit=128002016
> 
> I believe the "rw=0" means that was a simple read request, and not a 
> read-ahead.

Correct.

> 128002016 equals about 62 gigs, which is the correct volume size:
> 
>   Filesystem           1K-blocks      Used Available Use% Mounted on
>   /dev/sdb1             62995364   2832696  56962620   5% /xxx
> 
>   /dev/sdb1 on /xxx type ext2 (rw,noatime)

How are you reproducing this, through the file system (reading files),
or reading the device? If the former, is the file system definitely
sound - eg does it pass fsck?

> I'm at a loss as to why ext2 would want to read 3+ gigs past the end of 
> the volume or why the arcmsr driver setting max_sectors to be 4096 instead 
> of 512 makes a difference.

It's truly puzzing why the 4k vs 512 would make a difference, except if
the driver really doesn't support that large requests and corrupts the
data somehow. I'm having an extraordinarily hard time imaging how the
SCSI layer could even come up with such a bug.

So everything seems to point us getting wrong data from the hardware,
most likely because of a driver bug in either handling the larger
transfers or the hardware just not liking them very much.

> Erich, while using 4096 as the max_sectors count, in your lab can you
> make it so ll_rw_blk.c:handle_bad_sector() makes a call to
> dump_stack() after the printk's?  What does it show as the call trace?

Probably wont tell you much.

-- 
Jens Axboe


  reply	other threads:[~2006-03-31 20:22 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-29  7:26 about ll_rw_blk.c of void generic_make_request(struct bio *bio) erich
2006-03-30 15:58 ` Jens Axboe
2006-03-31 17:32   ` Chris Caputo
2006-03-31 18:09     ` Chris Caputo
2006-03-31 20:22       ` Jens Axboe [this message]
2006-03-31 20:37         ` Chris Caputo
2006-04-06  9:32           ` erich
2006-04-06 11:44             ` Chris Caputo
2006-04-06 12:27               ` erich

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=20060331202202.GH14022@suse.de \
    --to=axboe@suse.de \
    --cc=akpm@osdl.org \
    --cc=ccaputo@alt.net \
    --cc=erich@areca.com.tw \
    --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