From: Jens Axboe <jens.axboe@oracle.com>
To: Pierre Ossman <drzeus@drzeus.cx>
Cc: Don Mullis <dwm@meer.net>,
Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org
Subject: Re: 2.6.23-rc8-mm2: OOPS in mmc on boot
Date: Thu, 4 Oct 2007 18:42:25 +0200 [thread overview]
Message-ID: <20071004164225.GF5711@kernel.dk> (raw)
In-Reply-To: <20071004183555.3e0ed9eb@poseidon.drzeus.cx>
On Thu, Oct 04 2007, Pierre Ossman wrote:
> On Thu, 04 Oct 2007 09:19:40 -0700
> Don Mullis <dwm@meer.net> wrote:
>
> > This patch fixes the boot.
> >
>
> Fantastic. Then will try to get this upstream then.
I already put it in the sgchain drivers part. If you could please ack
it, that would be nice :-). I have a bunch of driver
updates/work-arounds there.
> > > It looks like missing init of the sg list in mmc, does this work?
> > >
>
> Jens, is this zeroing needed for each invocation, or really just once
> to get the list in a known state?
Once should actually be enough, so you could move it to init as well.
Don, care to verify with the below patch as well?
> Also, is chaining already upstream so Linus should have this for 2.6.23?
No, it's for 2.6.24.
diff --git a/drivers/mmc/card/queue.c b/drivers/mmc/card/queue.c
index b0abc7d..a5d0354 100644
--- a/drivers/mmc/card/queue.c
+++ b/drivers/mmc/card/queue.c
@@ -153,14 +153,14 @@ int mmc_init_queue(struct mmc_queue *mq, struct mmc_card *card, spinlock_t *lock
blk_queue_max_hw_segments(mq->queue, bouncesz / 512);
blk_queue_max_segment_size(mq->queue, bouncesz);
- mq->sg = kmalloc(sizeof(struct scatterlist),
+ mq->sg = kzalloc(sizeof(struct scatterlist),
GFP_KERNEL);
if (!mq->sg) {
ret = -ENOMEM;
goto cleanup_queue;
}
- mq->bounce_sg = kmalloc(sizeof(struct scatterlist) *
+ mq->bounce_sg = kzalloc(sizeof(struct scatterlist) *
bouncesz / 512, GFP_KERNEL);
if (!mq->bounce_sg) {
ret = -ENOMEM;
@@ -177,7 +177,7 @@ int mmc_init_queue(struct mmc_queue *mq, struct mmc_card *card, spinlock_t *lock
blk_queue_max_hw_segments(mq->queue, host->max_hw_segs);
blk_queue_max_segment_size(mq->queue, host->max_seg_size);
- mq->sg = kmalloc(sizeof(struct scatterlist) *
+ mq->sg = kzalloc(sizeof(struct scatterlist) *
host->max_phys_segs, GFP_KERNEL);
if (!mq->sg) {
ret = -ENOMEM;
--
Jens Axboe
next prev parent reply other threads:[~2007-10-04 16:41 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-04 6:11 2.6.23-rc8-mm2: OOPS in mmc on boot Don Mullis
2007-10-04 6:16 ` Andrew Morton
2007-10-04 7:25 ` Jens Axboe
2007-10-04 8:01 ` Pierre Ossman
2007-10-04 8:06 ` Jens Axboe
2007-10-04 8:46 ` Pierre Ossman
2007-10-04 9:30 ` Jens Axboe
2007-10-04 10:24 ` Pierre Ossman
2007-10-04 10:38 ` Jens Axboe
2007-10-04 10:46 ` Pierre Ossman
2007-10-04 10:59 ` Jens Axboe
2007-10-04 16:19 ` Don Mullis
2007-10-04 16:35 ` Pierre Ossman
2007-10-04 16:42 ` Jens Axboe [this message]
2007-10-04 16:46 ` Pierre Ossman
2007-10-04 17:06 ` Don Mullis
2007-10-04 18:10 ` Jens Axboe
2007-10-04 7:28 ` Pierre Ossman
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=20071004164225.GF5711@kernel.dk \
--to=jens.axboe@oracle.com \
--cc=akpm@linux-foundation.org \
--cc=drzeus@drzeus.cx \
--cc=dwm@meer.net \
--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 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.