On 2020/6/15 12:02, Jason Yan wrote: > This is an effort to eliminate the uninitialized_var() macro[1]. > > The use of this macro is the wrong solution because it forces off ANY > analysis by the compiler for a given variable. It even masks "unused > variable" warnings. > > Quoted from Linus[2]: > > "It's a horrible thing to use, in that it adds extra cruft to the > source code, and then shuts up a compiler warning (even the _reliable_ > warnings from gcc)." > > The gcc option "-Wmaybe-uninitialized" has been disabled and this change > will not produce any warnnings even with "make W=1". > > [1] https://github.com/KSPP/linux/issues/81 > [2] https://lore.kernel.org/lkml/CA+55aFz2500WfbKXAx8s67wrm9=yVJu65TpLgN_ybYNv0VEOKA@xxxxxxxxxxxxxx/ > > Cc: Kees Cook <keescook@xxxxxxxxxxxx> > Signed-off-by: Jason Yan <yanaijie@xxxxxxxxxx> > --- > fs/f2fs/data.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c > index 326c63879ddc..e6ec61274d76 100644 > --- a/fs/f2fs/data.c > +++ b/fs/f2fs/data.c > @@ -2856,7 +2856,7 @@ static int f2fs_write_cache_pages(struct address_space *mapping, > }; > #endif > int nr_pages; > - pgoff_t uninitialized_var(writeback_index); > + pgoff_t writeback_index; I suggest to delete this variable directly, as we did for mm in commit 28659cc8cc87 (mm/page-writeback.c: remove unused variable). Thanks, > pgoff_t index; > pgoff_t end; /* Inclusive */ > pgoff_t done_index; >