From: Jens Axboe <axboe@kernel.dk>
To: Tomasz Figa <t.figa@samsung.com>,
Tushar Behera <tushar.behera@linaro.org>
Cc: linux-next@vger.kernel.org, lkml <linux-kernel@vger.kernel.org>,
Chris Mason <chris.mason@fusionio.com>
Subject: Re: Boot failure on Arndale with next-20131105
Date: Tue, 05 Nov 2013 12:59:30 -0700 [thread overview]
Message-ID: <52794E22.5030807@kernel.dk> (raw)
In-Reply-To: <1451170.jb5zbRXgpt@amdc1227>
[-- Attachment #1: Type: text/plain, Size: 1031 bytes --]
On 11/05/2013 09:42 AM, Tomasz Figa wrote:
> Hi,
>
> On Tuesday 05 of November 2013 17:19:00 Tushar Behera wrote:
>> Hi,
>>
>> We are having a boot-time kernel panic on Samsung's Exynos5250-based
>> Arndale board with next-20131105. Bisect points to following commit.
>>
>> <<<
>> commit febca1baea1cfe2d7a0271385d89b03d5fb34f94
>> Author: Chris Mason <chris.mason@fusionio.com>
>> Date: Thu Oct 31 13:32:42 2013 -0600
>>
>> block: setup bi_vcnt on clones
>>
>> commit 9fc6286f347d changed the cloning code to make clones cheaper for
>> the case where we don't need to clone the iovec array. But,
>> the new clone needs the bi_vnct from the original.
>>
>> Signed-off-by: Chris Mason <chris.mason@fusionio.com>
>> Signed-off-by: Jens Axboe <axboe@kernel.dk>
>>>>>
>>
>> Reverting above commit, Arndale is able to boot again.
>
> I can confirm exactly the same behavior on Exynos 4210-based Trats board,
> with exactly the same bisection results.
Can either (or both) of you try this?
--
Jens Axboe
[-- Attachment #2: dm-clone.patch --]
[-- Type: text/x-patch, Size: 803 bytes --]
diff --git a/drivers/md/dm.c b/drivers/md/dm.c
index 8e6174c..a1177e1 100644
--- a/drivers/md/dm.c
+++ b/drivers/md/dm.c
@@ -1123,8 +1123,13 @@ struct clone_info {
static void bio_setup_sector(struct bio *bio, sector_t sector, sector_t len)
{
- bio->bi_iter.bi_sector = sector;
- bio->bi_iter.bi_size = to_bytes(len);
+ if (len) {
+ bio->bi_iter.bi_sector = sector;
+ bio->bi_iter.bi_size = to_bytes(len);
+ } else {
+ bio->bi_iter.bi_size = 0;
+ bio->bi_vcnt = 0;
+ }
}
/*
@@ -1178,8 +1183,7 @@ static void __clone_and_map_simple_bio(struct clone_info *ci,
* and discard, so no need for concern about wasted bvec allocations.
*/
__bio_clone(clone, ci->bio);
- if (len)
- bio_setup_sector(clone, ci->sector, len);
+ bio_setup_sector(clone, ci->sector, len);
__map_bio(tio);
}
next prev parent reply other threads:[~2013-11-05 19:59 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-05 11:49 Boot failure on Arndale with next-20131105 Tushar Behera
2013-11-05 16:42 ` Tomasz Figa
2013-11-05 17:38 ` Stephen Warren
2013-11-05 21:25 ` Jens Axboe
2013-11-08 8:45 ` Stephen Rothwell
2013-11-05 19:59 ` Jens Axboe [this message]
2013-11-05 19:33 ` Jens Axboe
2013-11-05 20:23 ` Olof Johansson
2013-11-05 20:33 ` Chris Mason
2013-11-05 20:38 ` Olof Johansson
2013-11-05 20:56 ` Chris Mason
2013-11-05 21:27 ` Olof Johansson
2013-11-05 22:06 ` Stephen Warren
2013-11-05 22:41 ` Olof Johansson
2013-11-06 0:04 ` Chris Mason
2013-11-06 6:15 ` Tushar Behera
2013-11-05 20:34 ` Jens Axboe
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=52794E22.5030807@kernel.dk \
--to=axboe@kernel.dk \
--cc=chris.mason@fusionio.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=t.figa@samsung.com \
--cc=tushar.behera@linaro.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.