All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jens Axboe <axboe@suse.de>
To: Roger Larsson <roger.larsson@norran.net>
Cc: Roy Sigurd Karlsbakk <roy@karlsbakk.net>, linux-kernel@vger.kernel.org
Subject: Re: Errors in the VM - detailed
Date: Thu, 31 Jan 2002 21:29:09 +0100	[thread overview]
Message-ID: <20020131212909.T5301@suse.de> (raw)
In-Reply-To: <Pine.LNX.4.30.0201311604470.14025-100000@mustard.heime.net> <200201312024.g0VKORD19223@mailf.telia.com>
In-Reply-To: <200201312024.g0VKORD19223@mailf.telia.com>

On Thu, Jan 31 2002, Roger Larsson wrote:
> Wait a minute - it might be readahead that gets killed.
> If I remember correctly READA requests are dropped when failing to allocate 
> space for it - yes I did...

s/allocate/retrieve

No allocation takes place.

> /usr/src/develop/linux/drivers/block/ll_rw_block.c:746 (earlier kernel)
> 
> 	/*
> 	 * Grab a free request from the freelist - if that is empty, check
> 	 * if we are doing read ahead and abort instead of blocking for
> 	 * a free slot.
> 	 */
> get_rq:
> 	if (freereq) {
> 		req = freereq;
> 		freereq = NULL;
> 	} else if ((req = get_request(q, rw)) == NULL) {
> 		spin_unlock_irq(&io_request_lock);
> 		if (rw_ahead)
> 			goto end_io;
> 
> 		freereq = __get_request_wait(q, rw);
> 		goto again;
> 	}
> 
> Suppose we fail with get_request, the request is a rw_ahead,
> it quits... => no read ahead.
> 
> Try to add a prink there...
> 		if (rw_ahead) {
> 			printk("Skipping readahead...\n");
> 			goto end_io;
> 		}

That will trigger _all the time_ even on a moderately busy machine.
Checking if tossing away read-ahead is the issue is probably better
tested with just increasing the request slots. Roy, please try and change
the queue_nr_requests assignment in ll_rw_blk:blk_dev_init() to
something like 2048.

-- 
Jens Axboe


  reply	other threads:[~2002-01-31 20:30 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-31 15:05 Errors in the VM - detailed Roy Sigurd Karlsbakk
2002-01-31 15:44 ` David Mansfield
2002-01-31 20:21 ` Roger Larsson
2002-01-31 20:29   ` Jens Axboe [this message]
2002-01-31 20:43     ` Andrew Morton
2002-01-31 21:37       ` Jens Axboe
2002-02-01 16:05         ` Roy Sigurd Karlsbakk
2002-02-01 16:11         ` Roy Sigurd Karlsbakk
2002-02-01 18:44           ` Roger Larsson
2002-02-01 18:52             ` Roger Larsson
2002-02-01 18:57             ` Jens Axboe
2002-02-02 14:52               ` Roy Sigurd Karlsbakk
2002-02-02 14:43             ` Roy Sigurd Karlsbakk
2002-02-02 14:43             ` Roy Sigurd Karlsbakk
2002-02-02 14:44               ` Jens Axboe
2002-02-02 15:03                 ` Roy Sigurd Karlsbakk
2002-02-02 15:06                   ` Jens Axboe
2002-02-02 15:22                     ` Errors in the VM - detailed (or is it Tux?) Roy Sigurd Karlsbakk
2002-02-02 15:31                       ` Errors in the VM - detailed (or is it Tux? or rmap? or those together...) Roger Larsson
2002-02-02 15:38                         ` Roy Sigurd Karlsbakk
2002-02-02 16:24                           ` Roger Larsson
2002-02-02 16:39                             ` Roy Sigurd Karlsbakk
2002-02-02 16:52                               ` Roy Sigurd Karlsbakk
2002-02-02 17:29                                 ` Roger Larsson
2002-02-02 17:45                                   ` Errors in the VM - detailed Roy Sigurd Karlsbakk
2002-02-01 17:39 ` Denis Vlasenko
     [not found] <OF675D993F.933C6CB9-ON88256B52.00595CCC@boulder.ibm.com>
2002-02-01 11:52 ` Roy Sigurd Karlsbakk

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=20020131212909.T5301@suse.de \
    --to=axboe@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=roger.larsson@norran.net \
    --cc=roy@karlsbakk.net \
    /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.