linux-next: build failure after merge of the block tree

From: Stephen Rothwell
Date: Sun Dec 13 2020 - 23:19:08 EST


Hi all,

After merging the block tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

drivers/md/raid0.c: In function 'raid0_handle_discard':
drivers/md/raid0.c:511:26: error: passing argument 1 of 'trace_block_bio_remap' from incompatible pointer type [-Werror=incompatible-pointer-types]
511 | trace_block_bio_remap(bdev_get_queue(rdev->bdev),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| struct request_queue *
In file included from include/trace/events/block.h:11,
from drivers/md/raid0.c:17:
include/trace/events/block.h:458:23: note: expected 'struct bio *' but argument is of type 'struct request_queue *'
458 | TP_PROTO(struct bio *bio, dev_t dev, sector_t from),
| ~~~~~~~~~~~~^~~
include/linux/tracepoint.h:238:34: note: in definition of macro '__DECLARE_TRACE'
238 | static inline void trace_##name(proto) \
| ^~~~~
include/linux/tracepoint.h:411:24: note: in expansion of macro 'PARAMS'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
include/linux/tracepoint.h:547:22: note: in expansion of macro 'PARAMS'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~
include/trace/events/block.h:456:1: note: in expansion of macro 'TRACE_EVENT'
456 | TRACE_EVENT(block_bio_remap,
| ^~~~~~~~~~~
include/trace/events/block.h:458:2: note: in expansion of macro 'TP_PROTO'
458 | TP_PROTO(struct bio *bio, dev_t dev, sector_t from),
| ^~~~~~~~
drivers/md/raid0.c:512:5: warning: passing argument 2 of 'trace_block_bio_remap' makes integer from pointer without a cast [-Wint-conversion]
512 | discard_bio, disk_devt(mddev->gendisk),
| ^~~~~~~~~~~
| |
| struct bio *
In file included from include/trace/events/block.h:11,
from drivers/md/raid0.c:17:
include/trace/events/block.h:458:34: note: expected 'dev_t' {aka 'unsigned int'} but argument is of type 'struct bio *'
458 | TP_PROTO(struct bio *bio, dev_t dev, sector_t from),
| ~~~~~~^~~
include/linux/tracepoint.h:238:34: note: in definition of macro '__DECLARE_TRACE'
238 | static inline void trace_##name(proto) \
| ^~~~~
include/linux/tracepoint.h:411:24: note: in expansion of macro 'PARAMS'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
include/linux/tracepoint.h:547:22: note: in expansion of macro 'PARAMS'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~
include/trace/events/block.h:456:1: note: in expansion of macro 'TRACE_EVENT'
456 | TRACE_EVENT(block_bio_remap,
| ^~~~~~~~~~~
include/trace/events/block.h:458:2: note: in expansion of macro 'TP_PROTO'
458 | TP_PROTO(struct bio *bio, dev_t dev, sector_t from),
| ^~~~~~~~
drivers/md/raid0.c:511:4: error: too many arguments to function 'trace_block_bio_remap'
511 | trace_block_bio_remap(bdev_get_queue(rdev->bdev),
| ^~~~~~~~~~~~~~~~~~~~~
In file included from include/trace/events/block.h:11,
from drivers/md/raid0.c:17:
include/linux/tracepoint.h:238:21: note: declared here
238 | static inline void trace_##name(proto) \
| ^~~~~~
include/linux/tracepoint.h:411:2: note: in expansion of macro '__DECLARE_TRACE'
411 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \
| ^~~~~~~~~~~~~~~
include/linux/tracepoint.h:547:2: note: in expansion of macro 'DECLARE_TRACE'
547 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args))
| ^~~~~~~~~~~~~
include/trace/events/block.h:456:1: note: in expansion of macro 'TRACE_EVENT'
456 | TRACE_EVENT(block_bio_remap,
| ^~~~~~~~~~~

Caused by commit

1c02fca620f7 ("block: remove the request_queue argument to the block_bio_remap tracepoint")

interacting with commit

57a0f3a81ef2 ("Revert "md: add md_submit_discard_bio() for submitting discard bio"")

from Linus' tree.

I have applied the following merge fix:

From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Date: Mon, 14 Dec 2020 15:14:26 +1100
Subject: [PATCH] fixup for "block: remove the request_queue argument to the block_bio_remap tracepoint"

conflicting with

"Revert "md: add md_submit_discard_bio() for submitting discard bio""

Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
---
drivers/md/raid0.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c
index 8f5b0143d8c6..67f157f2525d 100644
--- a/drivers/md/raid0.c
+++ b/drivers/md/raid0.c
@@ -508,8 +508,8 @@ static void raid0_handle_discard(struct mddev *mddev, struct bio *bio)
bio_chain(discard_bio, bio);
bio_clone_blkg_association(discard_bio, bio);
if (mddev->gendisk)
- trace_block_bio_remap(bdev_get_queue(rdev->bdev),
- discard_bio, disk_devt(mddev->gendisk),
+ trace_block_bio_remap(discard_bio,
+ disk_devt(mddev->gendisk),
bio->bi_iter.bi_sector);
submit_bio_noacct(discard_bio);
}
--
2.29.2

--
Cheers,
Stephen Rothwell

Attachment: pgp1XiUNho4u7.pgp
Description: OpenPGP digital signature