Subject: Re: linux-next: build warnings after merge of the block tree

From: Jens Axboe <[email-masked]>
Date: Tue, 26 Nov 2013 12:02:08 -0700

On 11/26/2013 12:01 PM, Olof Johansson wrote:
> On Mon, Nov 25, 2013 at 7:35 PM, Stephen Rothwell <[email-masked]> wrote:
>> Hi all,
>>
>> On Tue, 26 Nov 2013 13:29:46 +1100 Stephen Rothwell <[email-masked]> wrote:
>>>
>>> After merging the block tree, today's linux-next build (arm
>>> multi_v7_defconfig) produced these warnings:
>>>
>>> block/blk-merge.c: In function 'blk_rq_map_sg':
>>> block/blk-merge.c:133:8: warning: 'bvprv.bv_len' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:171:23: note: 'bvprv.bv_len' was declared here
>>> block/blk-merge.c:133:8: warning: 'bvprv.bv_page' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:171:23: note: 'bvprv.bv_page' was declared here
>>> block/blk-merge.c:133:8: warning: 'bvprv.bv_offset' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:171:23: note: 'bvprv.bv_offset' was declared here
>>> block/blk-merge.c: In function 'blk_bio_map_sg':
>>> block/blk-merge.c:133:8: warning: 'bvprv.bv_len' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:233:23: note: 'bvprv.bv_len' was declared here
>>> block/blk-merge.c:133:8: warning: 'bvprv.bv_offset' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:233:23: note: 'bvprv.bv_offset' was declared here
>>> block/blk-merge.c:133:8: warning: 'bvprv.bv_page' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:233:23: note: 'bvprv.bv_page' was declared here
>>> block/blk-merge.c: In function 'attempt_merge':
>>> block/blk-merge.c:108:7: warning: 'end_bv.bv_offset' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:89:17: note: 'end_bv.bv_offset' was declared here
>>> block/blk-merge.c:108:7: warning: 'end_bv.bv_page' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:89:17: note: 'end_bv.bv_page' was declared here
>>> block/blk-merge.c:108:7: warning: 'end_bv.bv_len' may be used uninitialized in this function [-Wuninitialized]
>>> block/blk-merge.c:89:17: note: 'end_bv.bv_len' was declared here
>>>
>>> arm has its own definition of BIOVEC_PHYS_MERGEABLE() if that is relevant.
>>
>> For an easier test case, the i386 defcongig does this as well.
> 
> I just noticed that i see this with gcc 4.7.0, but 4.8.1 does not warn.

That's good, because it's not a bug. But arguably we should shut up 4.7
as well, however...

-- 
Jens Axboe