Hi all,
After merging the block tree, today's linux-next build (x86_64
allmodconfig) failed like this:
In file included from block/blk-mq-debugfs-zoned.c:7:
block/blk-mq-debugfs.h:24:42: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
24 | struct blk_mq_hw_ctx *hctx);
| ^~~~~~~~~~~~~
block/blk-mq-debugfs.h:25:44: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
25 | void blk_mq_debugfs_unregister_hctx(struct blk_mq_hw_ctx *hctx);
| ^~~~~~~~~~~~~
block/blk-mq-debugfs.h:32:47: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
32 | struct blk_mq_hw_ctx *hctx);
| ^~~~~~~~~~~~~
block/blk-mq-debugfs.h:33:50: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
33 | void blk_mq_debugfs_unregister_sched_hctx(struct blk_mq_hw_ctx *hctx);
| ^~~~~~~~~~~~~
cc1: all warnings being treated as errors
I have no idea what has caused this.
I have used the block tree from next-20220308 for today.
--
Cheers,
Stephen Rothwell
On 3/8/22 7:16 PM, Stephen Rothwell wrote:
> Hi all,
>
> After merging the block tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> In file included from block/blk-mq-debugfs-zoned.c:7:
> block/blk-mq-debugfs.h:24:42: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
> 24 | struct blk_mq_hw_ctx *hctx);
> | ^~~~~~~~~~~~~
> block/blk-mq-debugfs.h:25:44: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
> 25 | void blk_mq_debugfs_unregister_hctx(struct blk_mq_hw_ctx *hctx);
> | ^~~~~~~~~~~~~
> block/blk-mq-debugfs.h:32:47: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
> 32 | struct blk_mq_hw_ctx *hctx);
> | ^~~~~~~~~~~~~
> block/blk-mq-debugfs.h:33:50: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
> 33 | void blk_mq_debugfs_unregister_sched_hctx(struct blk_mq_hw_ctx *hctx);
> | ^~~~~~~~~~~~~
> cc1: all warnings being treated as errors
It just needs a forward declaration. I'll fix it up.
--
Jens Axboe
On 3/8/22 7:33 PM, Jens Axboe wrote:
> On 3/8/22 7:16 PM, Stephen Rothwell wrote:
>> Hi all,
>>
>> After merging the block tree, today's linux-next build (x86_64
>> allmodconfig) failed like this:
>>
>> In file included from block/blk-mq-debugfs-zoned.c:7:
>> block/blk-mq-debugfs.h:24:42: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
>> 24 | struct blk_mq_hw_ctx *hctx);
>> | ^~~~~~~~~~~~~
>> block/blk-mq-debugfs.h:25:44: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
>> 25 | void blk_mq_debugfs_unregister_hctx(struct blk_mq_hw_ctx *hctx);
>> | ^~~~~~~~~~~~~
>> block/blk-mq-debugfs.h:32:47: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
>> 32 | struct blk_mq_hw_ctx *hctx);
>> | ^~~~~~~~~~~~~
>> block/blk-mq-debugfs.h:33:50: error: 'struct blk_mq_hw_ctx' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
>> 33 | void blk_mq_debugfs_unregister_sched_hctx(struct blk_mq_hw_ctx *hctx);
>> | ^~~~~~~~~~~~~
>> cc1: all warnings being treated as errors
>
> It just needs a forward declaration. I'll fix it up.
Fixed and pushed out.
--
Jens Axboe