On 5/11/16 11:14 AM, Carlos Maiolino wrote: > From: Carlos Maiolino <cmaiolino@xxxxxxxxxx> > > Due the initialization of blockmask variable with its definition, gcc issues the > following warning due an unused variable during compilation time. > > fs/xfs//xfs_aops.c: In function ‘xfs_finish_page_writeback’: > fs/xfs//xfs_aops.c:97:15: warning: unused variable ‘blockmask’ > [-Wunused-variable] > unsigned int blockmask = (1 << inode->i_blkbits) - 1; > ^ > Remove this warning by initializing the variable after its definition. > > This change causes no difference in the generated assembly code Oh, I see. It's unused on non-debug builds because it's only used under ASSERT. Ok, that's a good way to fix it, although there are some scanners out there (clang? some gcc? I don't recall) which will also flag write-only variables. It'd be ugly but sometimes I wonder if an ASSERT_DECL() macro would make some sense. Or a MASK() macro so we could just do: #define MASK(nbits) ((1UL << (nbits)) - 1) /* mask with NBITS bits set */ ASSERT((bvec->bv_offset & MASK(inode->i_blkbits)) == 0); But for now, this is better, and fixes what most people will see, so fine by me: Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx> > Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> > --- > fs/xfs/xfs_aops.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/fs/xfs/xfs_aops.c b/fs/xfs/xfs_aops.c > index 40645a4..f4e2d3b 100644 > --- a/fs/xfs/xfs_aops.c > +++ b/fs/xfs/xfs_aops.c > @@ -94,11 +94,12 @@ xfs_finish_page_writeback( > struct bio_vec *bvec, > int error) > { > - unsigned int blockmask = (1 << inode->i_blkbits) - 1; > + unsigned int blockmask; > unsigned int end = bvec->bv_offset + bvec->bv_len - 1; > struct buffer_head *head, *bh; > unsigned int off = 0; > > + blockmask = (1 << inode->i_blkbits) - 1; > ASSERT(bvec->bv_offset < PAGE_SIZE); > ASSERT((bvec->bv_offset & blockmask) == 0); > ASSERT(end < PAGE_SIZE); > _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs