From: Stephen Rothwell <sfr@canb.auug.org.au>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-next@vger.kernel.org, linux-kernel@vger.kernel.org,
Chris Mason <chris.mason@fusionio.com>,
Kent Overstreet <koverstreet@google.com>
Subject: linux-next: manual merge of the akpm tree with Linus' tree
Date: Mon, 20 May 2013 14:04:49 +1000 [thread overview]
Message-ID: <20130520140449.5da8b61ceaaf06618914e76f@canb.auug.org.au> (raw)
[-- Attachment #1: Type: text/plain, Size: 3747 bytes --]
Hi Andrew,
Today's linux-next merge of the akpm tree got conflicts in
fs/btrfs/inode.c and fs/btrfs/volumes.c between commit 9be3395bcd4a
("Btrfs: use a btrfs bioset instead of abusing bio internals") from
Linus' tree and commit "block: prep work for batch completion" from the
akpm tree.
I fixed it up (I think - see below) and can carry the fix as necessary
(no action is required).
I also noticed that a single conversion of bio_endio to bio_endio_batch
is done in the akpm patch but bio_endio_batch is not introduced until a
later patch ... :-(
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc fs/btrfs/inode.c
index af978f7,551c8bd..0000000
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@@ -6932,14 -6928,11 +6932,15 @@@ struct btrfs_dio_private
/* IO errors */
int errors;
+ /* orig_bio is our btrfs_io_bio */
struct bio *orig_bio;
+
+ /* dio_bio came from fs/direct-io.c */
+ struct bio *dio_bio;
};
- static void btrfs_endio_direct_read(struct bio *bio, int err)
+ static void btrfs_endio_direct_read(struct bio *bio, int err,
+ struct batch_complete *batch)
{
struct btrfs_dio_private *dip = bio->bi_private;
struct bio_vec *bvec_end = bio->bi_io_vec + bio->bi_vcnt - 1;
@@@ -6992,12 -6984,12 +6993,13 @@@ failed
/* If we had a csum failure make sure to clear the uptodate flag */
if (err)
- clear_bit(BIO_UPTODATE, &bio->bi_flags);
- dio_end_io(bio, err, batch);
+ clear_bit(BIO_UPTODATE, &dio_bio->bi_flags);
- dio_end_io(dio_bio, err);
++ dio_end_io(dio_bio, err, batch);
+ bio_put(bio);
}
- static void btrfs_endio_direct_write(struct bio *bio, int err)
+ static void btrfs_endio_direct_write(struct bio *bio, int err,
+ struct batch_complete *batch)
{
struct btrfs_dio_private *dip = bio->bi_private;
struct inode *inode = dip->inode;
@@@ -7039,9 -7030,8 +7041,9 @@@ out_done
/* If we had an error make sure to clear the uptodate flag */
if (err)
- clear_bit(BIO_UPTODATE, &bio->bi_flags);
- dio_end_io(bio, err, batch);
+ clear_bit(BIO_UPTODATE, &dio_bio->bi_flags);
- dio_end_io(dio_bio, err);
++ dio_end_io(dio_bio, err, batch);
+ bio_put(bio);
}
static int __btrfs_submit_bio_start_direct_io(struct inode *inode, int rw,
diff --cc fs/btrfs/volumes.c
index 8bffb91,7299b55..0000000
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@@ -5018,9 -5019,35 +5018,10 @@@ int btrfs_rmap_block(struct btrfs_mappi
return 0;
}
- static void btrfs_end_bio(struct bio *bio, int err)
-static void *merge_stripe_index_into_bio_private(void *bi_private,
- unsigned int stripe_index)
-{
- /*
- * with single, dup, RAID0, RAID1 and RAID10, stripe_index is
- * at most 1.
- * The alternative solution (instead of stealing bits from the
- * pointer) would be to allocate an intermediate structure
- * that contains the old private pointer plus the stripe_index.
- */
- BUG_ON((((uintptr_t)bi_private) & 3) != 0);
- BUG_ON(stripe_index > 3);
- return (void *)(((uintptr_t)bi_private) | stripe_index);
-}
-
-static struct btrfs_bio *extract_bbio_from_bio_private(void *bi_private)
-{
- return (struct btrfs_bio *)(((uintptr_t)bi_private) & ~((uintptr_t)3));
-}
-
-static unsigned int extract_stripe_index_from_bio_private(void *bi_private)
-{
- return (unsigned int)((uintptr_t)bi_private) & 3;
-}
-
+ static void btrfs_end_bio(struct bio *bio, int err,
+ struct batch_complete *batch)
{
- struct btrfs_bio *bbio = extract_bbio_from_bio_private(bio->bi_private);
+ struct btrfs_bio *bbio = bio->bi_private;
int is_orig_bio = 0;
if (err) {
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
next reply other threads:[~2013-05-20 4:05 UTC|newest]
Thread overview: 106+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-20 4:04 Stephen Rothwell [this message]
2013-05-20 12:19 ` linux-next: manual merge of the akpm tree with Linus' tree Chris Mason
-- strict thread matches above, loose matches on Subject: below --
2019-12-02 2:17 Stephen Rothwell
2019-12-02 2:08 Stephen Rothwell
2018-10-15 7:22 Stephen Rothwell
2018-10-15 7:04 Stephen Rothwell
2018-03-26 8:56 Stephen Rothwell
2017-01-09 2:51 Stephen Rothwell
2016-12-12 5:49 Stephen Rothwell
2016-01-19 2:42 Stephen Rothwell
2016-01-19 2:36 Stephen Rothwell
2015-07-27 5:26 Stephen Rothwell
2013-09-10 4:38 Stephen Rothwell
2013-09-10 22:27 ` Andrew Morton
2013-09-10 22:29 ` Al Viro
2013-09-10 22:35 ` Andrew Morton
2013-09-10 22:36 ` Al Viro
2013-09-10 22:39 ` Al Viro
2013-09-10 22:41 ` Andrew Morton
2013-09-10 22:48 ` Al Viro
2013-09-10 22:59 ` Al Viro
2013-09-10 23:13 ` Andrew Morton
2013-09-10 23:55 ` Al Viro
2013-09-11 4:30 ` Stephen Rothwell
2013-09-10 23:37 ` Linus Torvalds
2013-09-10 23:53 ` Al Viro
2013-09-11 0:01 ` Linus Torvalds
2013-09-11 0:39 ` Dave Chinner
2013-09-13 0:56 ` Linus Torvalds
2013-09-13 1:12 ` Linus Torvalds
2013-09-13 1:35 ` Al Viro
2013-09-13 19:12 ` Linus Torvalds
2013-09-13 19:28 ` Linus Torvalds
2013-09-13 19:54 ` Linus Torvalds
2013-09-13 20:00 ` Al Viro
2013-09-13 20:18 ` Al Viro
2013-09-13 20:23 ` Al Viro
2013-09-13 20:25 ` Linus Torvalds
2013-09-13 20:31 ` Linus Torvalds
2013-09-13 20:31 ` Al Viro
2013-09-13 20:34 ` Linus Torvalds
2013-09-10 22:35 ` Linus Torvalds
2013-09-10 22:44 ` Andrew Morton
2013-09-11 0:30 ` Stephen Rothwell
2013-09-11 0:41 ` Linus Torvalds
2013-09-10 4:21 Stephen Rothwell
2013-09-10 4:09 Stephen Rothwell
2013-09-10 4:12 ` Stephen Rothwell
2013-09-09 5:38 Stephen Rothwell
2013-09-09 5:22 Stephen Rothwell
2013-09-09 5:16 Stephen Rothwell
2013-08-30 8:44 Stephen Rothwell
2013-05-27 6:20 Stephen Rothwell
2013-05-13 5:20 Eric Paris
2013-05-13 2:07 Stephen Rothwell
2013-05-13 2:11 ` Eric Paris
2013-05-13 4:16 ` Stephen Rothwell
2013-05-13 4:49 ` Kees Cook
2013-05-13 5:14 ` Eric Paris
2013-05-02 6:01 Stephen Rothwell
2013-04-29 8:38 Stephen Rothwell
2013-04-19 7:40 Stephen Rothwell
2013-04-16 7:25 Stephen Rothwell
2013-04-03 6:10 Stephen Rothwell
2013-03-25 4:22 Stephen Rothwell
2013-03-04 2:21 Stephen Rothwell
2013-01-04 3:27 Stephen Rothwell
2012-12-11 5:25 Stephen Rothwell
2012-12-11 5:22 Stephen Rothwell
2012-12-11 7:58 ` Glauber Costa
2012-12-07 6:39 Stephen Rothwell
2012-11-30 6:24 Stephen Rothwell
2012-11-26 12:52 Stephen Rothwell
2012-11-26 12:48 Stephen Rothwell
2012-11-26 13:25 ` Xiaotian Feng
2012-11-26 12:34 Stephen Rothwell
2012-10-15 2:07 Stephen Rothwell
2012-10-15 22:14 ` Catalin Marinas
2012-10-01 14:15 Stephen Rothwell
2012-08-22 5:59 Stephen Rothwell
2012-08-22 8:58 ` Mel Gorman
2012-07-27 3:57 Stephen Rothwell
2012-07-02 6:39 Stephen Rothwell
2012-06-04 4:58 Stephen Rothwell
2012-05-31 4:24 Stephen Rothwell
2012-05-31 4:13 Stephen Rothwell
2012-05-31 7:25 ` Johannes Weiner
2012-05-31 8:24 ` Stephen Rothwell
2012-05-31 8:27 ` Stephen Rothwell
2012-05-21 8:23 Stephen Rothwell
2012-05-21 8:13 Stephen Rothwell
2012-05-21 8:16 ` Cyrill Gorcunov
2012-03-08 6:53 Stephen Rothwell
2012-03-08 7:32 ` Andrew Morton
2012-03-08 7:41 ` Stephen Rothwell
2012-03-08 7:50 ` Andrew Morton
2012-03-08 7:50 ` Xiao Guangrong
2012-03-08 9:59 ` Xiao Guangrong
2012-03-08 21:24 ` Andrew Morton
2012-03-08 23:42 ` Linus Torvalds
2011-12-28 7:54 Stephen Rothwell
2011-11-08 3:24 Stephen Rothwell
2011-11-01 8:16 Stephen Rothwell
2011-11-01 10:47 ` Tao Ma
2011-09-16 6:09 Stephen Rothwell
2011-08-15 4:52 Stephen Rothwell
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=20130520140449.5da8b61ceaaf06618914e76f@canb.auug.org.au \
--to=sfr@canb.auug.org.au \
--cc=akpm@linux-foundation.org \
--cc=chris.mason@fusionio.com \
--cc=koverstreet@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@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;
as well as URLs for NNTP newsgroup(s).