Re: linux-next: build failure after merge of the final tree (blocktree related)

From: Stephen Rothwell
Date: Mon Apr 01 2013 - 19:22:52 EST


Hi Jens,

On Tue, 26 Mar 2013 17:31:59 +1100 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> After merging the final tree, today's linux-next build (powerpc allyesconfig)
> failed like this:
>
> drivers/built-in.o: In function `bio_alloc_pages':
> (.opd+0x2364a8): multiple definition of `bio_alloc_pages'
> fs/built-in.o:(.opd+0x7188): first defined here
>
> Caused by an interaction between commits a07876064a0b ("block: Add
> bio_alloc_pages()") and commit cafe56359144 ("bcache: A block layer
> cache") from the block tree.
>
> I have applied the following fix patch (this should have happened in
> merge commit 12f45f28441e "Merge branch 'for-3.10/drivers' into
> for-next"):
>
> From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> Date: Tue, 26 Mar 2013 17:26:45 +1100
> Subject: [PATCH] block: remove the extra copy of bio_alloc_pages
>
> Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> ---
> drivers/md/bcache/util.c | 18 ------------------
> drivers/md/bcache/util.h | 2 --
> 2 files changed, 20 deletions(-)
>
> diff --git a/drivers/md/bcache/util.c b/drivers/md/bcache/util.c
> index dcec2e4..671a55d 100644
> --- a/drivers/md/bcache/util.c
> +++ b/drivers/md/bcache/util.c
> @@ -237,24 +237,6 @@ start: bv->bv_len = min_t(size_t, PAGE_SIZE - bv->bv_offset,
> }
> EXPORT_SYMBOL_GPL(bio_map);
>
> -int bio_alloc_pages(struct bio *bio, gfp_t gfp)
> -{
> - int i;
> - struct bio_vec *bv;
> -
> - bio_for_each_segment(bv, bio, i) {
> - bv->bv_page = alloc_page(gfp);
> - if (!bv->bv_page) {
> - while (bv-- != bio->bi_io_vec + bio->bi_idx)
> - __free_page(bv->bv_page);
> - return -ENOMEM;
> - }
> - }
> -
> - return 0;
> -}
> -EXPORT_SYMBOL_GPL(bio_alloc_pages);
> -
> /*
> * Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group (Any
> * use permitted, subject to terms of PostgreSQL license; see.)
> diff --git a/drivers/md/bcache/util.h b/drivers/md/bcache/util.h
> index 56705fd..499d746 100644
> --- a/drivers/md/bcache/util.h
> +++ b/drivers/md/bcache/util.h
> @@ -570,8 +570,6 @@ static inline unsigned fract_exp_two(unsigned x, unsigned fract_bits)
>
> void bio_map(struct bio *bio, void *base);
>
> -int bio_alloc_pages(struct bio *bio, gfp_t gfp);
> -
> static inline sector_t bdev_sectors(struct block_device *bdev)
> {
> return bdev->bd_inode->i_size >> 9;
> --
> 1.8.1

Ping?
--
Cheers,
Stephen Rothwell sfr@xxxxxxxxxxxxxxxx

Attachment: pgp00000.pgp
Description: PGP signature