diff mbox

ext4: Silence warning in ext4_writepages()

Message ID 1372788869-24456-1-git-send-email-jack@suse.cz
State New, archived
Headers show

Commit Message

Jan Kara July 2, 2013, 6:14 p.m. UTC
The loop in mpage_map_and_submit_extent() is guaranteed to always run at
least once since the caller of mpage_map_and_submit_extent() makes sure
map->m_len > 0. So make that explicit using do-while instead of pure
while which also silences the compiler warning about uninitialized 'err'
variable.

Signed-off-by: Jan Kara <jack@suse.cz>
---
 fs/ext4/inode.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Lukas Czerner July 3, 2013, 10:07 a.m. UTC | #1
On Tue, 2 Jul 2013, Jan Kara wrote:

> Date: Tue,  2 Jul 2013 20:14:29 +0200
> From: Jan Kara <jack@suse.cz>
> To: Ted Tso <tytso@mit.edu>
> Cc: linux-ext4@vger.kernel.org, Jan Kara <jack@suse.cz>
> Subject: [PATCH] ext4: Silence warning in ext4_writepages()
> 
> The loop in mpage_map_and_submit_extent() is guaranteed to always run at
> least once since the caller of mpage_map_and_submit_extent() makes sure
> map->m_len > 0. So make that explicit using do-while instead of pure
> while which also silences the compiler warning about uninitialized 'err'
> variable.

Looks good.

Reviewed-by: Lukas Czerner <lczerner@redhat.com>

> 
> Signed-off-by: Jan Kara <jack@suse.cz>
> ---
>  fs/ext4/inode.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
> index 0188e65..19a1643 100644
> --- a/fs/ext4/inode.c
> +++ b/fs/ext4/inode.c
> @@ -2163,7 +2163,7 @@ static int mpage_map_and_submit_extent(handle_t *handle,
>  
>  	mpd->io_submit.io_end->offset =
>  				((loff_t)map->m_lblk) << inode->i_blkbits;
> -	while (map->m_len) {
> +	do {
>  		err = mpage_map_one_extent(handle, mpd);
>  		if (err < 0) {
>  			struct super_block *sb = inode->i_sb;
> @@ -2201,7 +2201,7 @@ static int mpage_map_and_submit_extent(handle_t *handle,
>  		err = mpage_map_and_submit_buffers(mpd);
>  		if (err < 0)
>  			return err;
> -	}
> +	} while (map->m_len);
>  
>  	/* Update on-disk size after IO is submitted */
>  	disksize = ((loff_t)mpd->first_page) << PAGE_CACHE_SHIFT;
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Theodore Ts'o July 6, 2013, 1:58 a.m. UTC | #2
On Wed, Jul 03, 2013 at 12:07:25PM +0200, Lukáš Czerner wrote:
> On Tue, 2 Jul 2013, Jan Kara wrote:
> 
> > Date: Tue,  2 Jul 2013 20:14:29 +0200
> > From: Jan Kara <jack@suse.cz>
> > To: Ted Tso <tytso@mit.edu>
> > Cc: linux-ext4@vger.kernel.org, Jan Kara <jack@suse.cz>
> > Subject: [PATCH] ext4: Silence warning in ext4_writepages()
> > 
> > The loop in mpage_map_and_submit_extent() is guaranteed to always run at
> > least once since the caller of mpage_map_and_submit_extent() makes sure
> > map->m_len > 0. So make that explicit using do-while instead of pure
> > while which also silences the compiler warning about uninitialized 'err'
> > variable.
> 
> Looks good.
> 
> Reviewed-by: Lukas Czerner <lczerner@redhat.com>

Applied, thanks.

						- Ted
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 0188e65..19a1643 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -2163,7 +2163,7 @@  static int mpage_map_and_submit_extent(handle_t *handle,
 
 	mpd->io_submit.io_end->offset =
 				((loff_t)map->m_lblk) << inode->i_blkbits;
-	while (map->m_len) {
+	do {
 		err = mpage_map_one_extent(handle, mpd);
 		if (err < 0) {
 			struct super_block *sb = inode->i_sb;
@@ -2201,7 +2201,7 @@  static int mpage_map_and_submit_extent(handle_t *handle,
 		err = mpage_map_and_submit_buffers(mpd);
 		if (err < 0)
 			return err;
-	}
+	} while (map->m_len);
 
 	/* Update on-disk size after IO is submitted */
 	disksize = ((loff_t)mpd->first_page) << PAGE_CACHE_SHIFT;