From: Stephen Rothwell <sfr@canb.auug.org.au>
To: Neil Brown <neilb@suse.de>
Cc: linux-next@vger.kernel.org, linux-kernel@vger.kernel.org,
Christoph Hellwig <hch@infradead.org>,
Jens Axboe <axboe@kernel.dk>
Subject: linux-next: manual merge of the md tree with the block tree
Date: Fri, 7 Oct 2011 14:06:33 +1100 [thread overview]
Message-ID: <20111007140633.a3b52490ca0027033dae37de@canb.auug.org.au> (raw)
[-- Attachment #1: Type: text/plain, Size: 10606 bytes --]
Hi Neil,
Today's linux-next merge of the md tree got conflicts in
drivers/md/faulty.c, drivers/md/linear.c, drivers/md/md.c,
drivers/md/md.h, drivers/md/multipath.c, drivers/md/raid0.c,
drivers/md/raid1.c, drivers/md/raid10.c and drivers/md/raid5.c between
commit 5a7bbad27a41 ("block: remove support for bio remapping from
->make_request") from the block tree and commit 546208fc263c ("md: remove
typedefs: mddev_t -> struct mddev") from the md tree.
Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc drivers/md/faulty.c
index 5ef304d,571445e..0000000
--- a/drivers/md/faulty.c
+++ b/drivers/md/faulty.c
@@@ -169,9 -169,9 +169,9 @@@ static void add_sector(struct faulty_co
conf->nfaults = n+1;
}
- static void make_request(mddev_t *mddev, struct bio *bio)
-static int make_request(struct mddev *mddev, struct bio *bio)
++static void make_request(struct mddev *mddev, struct bio *bio)
{
- conf_t *conf = mddev->private;
+ struct faulty_conf *conf = mddev->private;
int failit = 0;
if (bio_data_dir(bio) == WRITE) {
@@@ -215,16 -214,17 +215,16 @@@
b->bi_bdev = conf->rdev->bdev;
b->bi_private = bio;
b->bi_end_io = faulty_fail;
- generic_make_request(b);
- return 0;
- } else {
+ bio = b;
+ } else
bio->bi_bdev = conf->rdev->bdev;
- return 1;
- }
+
+ generic_make_request(bio);
}
- static void status(struct seq_file *seq, mddev_t *mddev)
+ static void status(struct seq_file *seq, struct mddev *mddev)
{
- conf_t *conf = mddev->private;
+ struct faulty_conf *conf = mddev->private;
int n;
if ((n=atomic_read(&conf->counters[WriteTransient])) != 0)
diff --cc drivers/md/linear.c
index c6ee491,cbac48c..0000000
--- a/drivers/md/linear.c
+++ b/drivers/md/linear.c
@@@ -264,9 -264,9 +264,9 @@@ static int linear_stop (struct mddev *m
return 0;
}
- static void linear_make_request (mddev_t *mddev, struct bio *bio)
-static int linear_make_request (struct mddev *mddev, struct bio *bio)
++static void linear_make_request (struct mddev *mddev, struct bio *bio)
{
- dev_info_t *tmp_dev;
+ struct dev_info *tmp_dev;
sector_t start_sector;
if (unlikely(bio->bi_rw & REQ_FLUSH)) {
@@@ -317,10 -319,11 +317,10 @@@
bio->bi_sector = bio->bi_sector - start_sector
+ tmp_dev->rdev->data_offset;
rcu_read_unlock();
-
- return 1;
+ generic_make_request(bio);
}
- static void linear_status (struct seq_file *seq, mddev_t *mddev)
+ static void linear_status (struct seq_file *seq, struct mddev *mddev)
{
seq_printf(seq, " %dk rounding", mddev->chunk_sectors / 2);
diff --cc drivers/md/md.c
index 8f52d4e,f8ed97d..0000000
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@@ -335,10 -332,11 +332,10 @@@ static DEFINE_SPINLOCK(all_mddevs_lock)
* call has finished, the bio has been linked into some internal structure
* and so is visible to ->quiesce(), so we don't need the refcount any more.
*/
-static int md_make_request(struct request_queue *q, struct bio *bio)
+static void md_make_request(struct request_queue *q, struct bio *bio)
{
const int rw = bio_data_dir(bio);
- mddev_t *mddev = q->queuedata;
+ struct mddev *mddev = q->queuedata;
- int rv;
int cpu;
unsigned int sectors;
diff --cc drivers/md/md.h
index 1509a3e,b618da5..0000000
--- a/drivers/md/md.h
+++ b/drivers/md/md.h
@@@ -424,10 -419,10 +419,10 @@@ struct mdk_personalit
int level;
struct list_head list;
struct module *owner;
- void (*make_request)(mddev_t *mddev, struct bio *bio);
- int (*run)(mddev_t *mddev);
- int (*stop)(mddev_t *mddev);
- void (*status)(struct seq_file *seq, mddev_t *mddev);
- int (*make_request)(struct mddev *mddev, struct bio *bio);
++ void (*make_request)(struct mddev *mddev, struct bio *bio);
+ int (*run)(struct mddev *mddev);
+ int (*stop)(struct mddev *mddev);
+ void (*status)(struct seq_file *seq, struct mddev *mddev);
/* error_handler must set ->faulty and clear ->in_sync
* if appropriate, and should abort recovery if needed
*/
diff --cc drivers/md/multipath.c
index 618dd9e,9650593..0000000
--- a/drivers/md/multipath.c
+++ b/drivers/md/multipath.c
@@@ -106,9 -106,9 +106,9 @@@ static void multipath_end_request(struc
rdev_dec_pending(rdev, conf->mddev);
}
- static void multipath_make_request(mddev_t *mddev, struct bio * bio)
-static int multipath_make_request(struct mddev *mddev, struct bio * bio)
++static void multipath_make_request(struct mddev *mddev, struct bio * bio)
{
- multipath_conf_t *conf = mddev->private;
+ struct mpconf *conf = mddev->private;
struct multipath_bh * mp_bh;
struct multipath_info *multipath;
@@@ -137,12 -137,12 +137,12 @@@
mp_bh->bio.bi_end_io = multipath_end_request;
mp_bh->bio.bi_private = mp_bh;
generic_make_request(&mp_bh->bio);
- return 0;
+ return;
}
- static void multipath_status (struct seq_file *seq, mddev_t *mddev)
+ static void multipath_status (struct seq_file *seq, struct mddev *mddev)
{
- multipath_conf_t *conf = mddev->private;
+ struct mpconf *conf = mddev->private;
int i;
seq_printf (seq, " [%d/%d] [", conf->raid_disks,
diff --cc drivers/md/raid0.c
index 4066615,38a9012..0000000
--- a/drivers/md/raid0.c
+++ b/drivers/md/raid0.c
@@@ -466,7 -468,7 +468,7 @@@ static inline int is_io_in_chunk_bounda
}
}
- static void raid0_make_request(mddev_t *mddev, struct bio *bio)
-static int raid0_make_request(struct mddev *mddev, struct bio *bio)
++static void raid0_make_request(struct mddev *mddev, struct bio *bio)
{
unsigned int chunk_sects;
sector_t sector_offset;
@@@ -519,38 -525,11 +521,11 @@@ bad_map
(unsigned long long)bio->bi_sector, bio->bi_size >> 10);
bio_io_error(bio);
- return 0;
+ return;
}
- static void raid0_status(struct seq_file *seq, mddev_t *mddev)
+ static void raid0_status(struct seq_file *seq, struct mddev *mddev)
{
- #undef MD_DEBUG
- #ifdef MD_DEBUG
- int j, k, h;
- char b[BDEVNAME_SIZE];
- raid0_conf_t *conf = mddev->private;
- int raid_disks = conf->strip_zone[0].nb_dev;
-
- sector_t zone_size;
- sector_t zone_start = 0;
- h = 0;
-
- for (j = 0; j < conf->nr_strip_zones; j++) {
- seq_printf(seq, " z%d", j);
- seq_printf(seq, "=[");
- for (k = 0; k < conf->strip_zone[j].nb_dev; k++)
- seq_printf(seq, "%s/", bdevname(
- conf->devlist[j*raid_disks + k]
- ->bdev, b));
-
- zone_size = conf->strip_zone[j].zone_end - zone_start;
- seq_printf(seq, "] ze=%lld ds=%lld s=%lld\n",
- (unsigned long long)zone_start>>1,
- (unsigned long long)conf->strip_zone[j].dev_start>>1,
- (unsigned long long)zone_size>>1);
- zone_start = conf->strip_zone[j].zone_end;
- }
- #endif
seq_printf(seq, " %dk chunks", mddev->chunk_sectors / 2);
return;
}
diff --cc drivers/md/raid1.c
index d4ddfa6,e09f595..0000000
--- a/drivers/md/raid1.c
+++ b/drivers/md/raid1.c
@@@ -782,14 -793,14 +793,14 @@@ do_sync_io
if (bvecs[i].bv_page)
put_page(bvecs[i].bv_page);
kfree(bvecs);
- PRINTK("%dB behind alloc failed, doing sync I/O\n", bio->bi_size);
+ pr_debug("%dB behind alloc failed, doing sync I/O\n", bio->bi_size);
}
- static void make_request(mddev_t *mddev, struct bio * bio)
-static int make_request(struct mddev *mddev, struct bio * bio)
++static void make_request(struct mddev *mddev, struct bio * bio)
{
- conf_t *conf = mddev->private;
- mirror_info_t *mirror;
- r1bio_t *r1_bio;
+ struct r1conf *conf = mddev->private;
+ struct mirror_info *mirror;
+ struct r1bio *r1_bio;
struct bio *read_bio;
int i, disks;
struct bitmap *bitmap;
@@@ -1123,11 -1134,13 +1134,11 @@@ read_again
if (do_sync || !bitmap || !plugged)
md_wakeup_thread(mddev->thread);
-
- return 0;
}
- static void status(struct seq_file *seq, mddev_t *mddev)
+ static void status(struct seq_file *seq, struct mddev *mddev)
{
- conf_t *conf = mddev->private;
+ struct r1conf *conf = mddev->private;
int i;
seq_printf(seq, " [%d/%d] [", conf->raid_disks,
diff --cc drivers/md/raid10.c
index ea5fc0b,7ba9742..0000000
--- a/drivers/md/raid10.c
+++ b/drivers/md/raid10.c
@@@ -830,11 -830,11 +830,11 @@@ static void unfreeze_array(struct r10co
spin_unlock_irq(&conf->resync_lock);
}
- static void make_request(mddev_t *mddev, struct bio * bio)
-static int make_request(struct mddev *mddev, struct bio * bio)
++static void make_request(struct mddev *mddev, struct bio * bio)
{
- conf_t *conf = mddev->private;
- mirror_info_t *mirror;
- r10bio_t *r10_bio;
+ struct r10conf *conf = mddev->private;
+ struct mirror_info *mirror;
+ struct r10bio *r10_bio;
struct bio *read_bio;
int i;
int chunk_sects = conf->chunk_mask + 1;
@@@ -1156,11 -1158,12 +1156,11 @@@ retry_write
if (do_sync || !mddev->bitmap || !plugged)
md_wakeup_thread(mddev->thread);
- return 0;
}
- static void status(struct seq_file *seq, mddev_t *mddev)
+ static void status(struct seq_file *seq, struct mddev *mddev)
{
- conf_t *conf = mddev->private;
+ struct r10conf *conf = mddev->private;
int i;
if (conf->near_copies < conf->raid_disks)
diff --cc drivers/md/raid5.c
index 83f2c44,921e966..0000000
--- a/drivers/md/raid5.c
+++ b/drivers/md/raid5.c
@@@ -3695,9 -3688,9 +3688,9 @@@ static struct stripe_head *__get_priori
return sh;
}
- static void make_request(mddev_t *mddev, struct bio * bi)
-static int make_request(struct mddev *mddev, struct bio * bi)
++static void make_request(struct mddev *mddev, struct bio * bi)
{
- raid5_conf_t *conf = mddev->private;
+ struct r5conf *conf = mddev->private;
int dd_idx;
sector_t new_sector;
sector_t logical_sector, last_sector;
@@@ -3851,11 -3844,13 +3844,11 @@@
bio_endio(bi, 0);
}
-
- return 0;
}
- static sector_t raid5_size(mddev_t *mddev, sector_t sectors, int raid_disks);
+ static sector_t raid5_size(struct mddev *mddev, sector_t sectors, int raid_disks);
- static sector_t reshape_request(mddev_t *mddev, sector_t sector_nr, int *skipped)
+ static sector_t reshape_request(struct mddev *mddev, sector_t sector_nr, int *skipped)
{
/* reshaping is quite different to recovery/resync so it is
* handled quite separately ... here.
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
next reply other threads:[~2011-10-07 3:06 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-07 3:06 Stephen Rothwell [this message]
2012-09-21 2:49 linux-next: manual merge of the md tree with the block tree Stephen Rothwell
2014-01-15 4:07 Stephen Rothwell
2014-01-15 5:30 ` NeilBrown
2015-08-17 4:44 Stephen Rothwell
2015-08-17 4:44 Stephen Rothwell
2015-08-17 4:44 Stephen Rothwell
2016-06-14 3:52 Stephen Rothwell
2016-06-14 3:52 Stephen Rothwell
2016-11-22 4:50 Stephen Rothwell
2016-11-23 2:17 Stephen Rothwell
2017-04-10 2:03 Stephen Rothwell
2017-04-10 2:08 Stephen Rothwell
2017-04-12 2:31 Stephen Rothwell
2017-06-13 4:33 Stephen Rothwell
2017-08-29 4:13 Stephen Rothwell
2018-05-31 4:34 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=20111007140633.a3b52490ca0027033dae37de@canb.auug.org.au \
--to=sfr@canb.auug.org.au \
--cc=axboe@kernel.dk \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=neilb@suse.de \
/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).