Btrfs: work around maybe-uninitialized warning
authorArnd Bergmann <arnd@arndb.de>
Thu, 18 May 2017 13:33:29 +0000 (15:33 +0200)
committerDavid Sterba <dsterba@suse.com>
Mon, 19 Jun 2017 16:25:59 +0000 (18:25 +0200)
commit3c91ee6964114b1a4f54ae6b397c889576d91cf4
tree61be313a053c6a962fb6b28eb2216613336e327d
parent3892ac9086a82c29a6ce71f8b54f820129947119
Btrfs: work around maybe-uninitialized warning

A rewrite of btrfs_submit_direct_hook appears to have introduced a warning:

fs/btrfs/inode.c: In function 'btrfs_submit_direct_hook':
fs/btrfs/inode.c:8467:14: error: 'bio' may be used uninitialized in this function [-Werror=maybe-uninitialized]

Where the 'bio' variable was previously initialized unconditionally, it
is now set in the "while (submit_len > 0)" loop that would never execute
if submit_len is zero.

Assuming this cannot happen in practice, we can avoid the warning
by simply replacing the while{} loop with a do{}while() loop so
the compiler knows that it will always be entered at least once.

Fixes changes introduced in "Btrfs: use bio_clone_bioset_partial to
simplify DIO submit".

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/inode.c