tree c480a343183a036e4c46b02b8e4714f5aea0d9b5
parent d34999c97ae87cd56514b8cbc6269651efe274fe
author Eric Sandeen <sandeen@redhat.com> 1458002567 +1100
committer Dave Chinner <david@fromorbit.com> 1458002567 +1100

xfs: ensure committed is initialized in xfs_trans_roll

__xfs_trans_roll() can return without setting the
*committed argument; this was a problem for xfs_bmap_finish():

        int       committed;/* xact committed or not */
...
        error = __xfs_trans_roll(tp, ip, &committed);
        if (error) {
...
                if (committed) {

and we tested an uninitialized "committed" variable on the
error path.  No caller is preserving "committed" state across
calls to __xfs_trans_roll(), so just initialize committed inside
the function to avoid future errors like this.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>


