Re: [PATCH v4 1/9] mm/swap: fix uninitialized compiler warning

From: Alex Shi
Date: Wed Nov 20 2019 - 06:42:53 EST




å 2019/11/19 äå11:41, Johannes Weiner åé:
> On Tue, Nov 19, 2019 at 08:23:15PM +0800, Alex Shi wrote:
>> ../mm/swap.c: In function â__page_cache_releaseâ:
>> ../mm/swap.c:67:10: warning: âflagsâ may be used uninitialized in this
>> function [-Wmaybe-uninitialized]
>> lruvec = lock_page_lruvec_irqsave(page, pgdat, flags);
>> ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> At this point in the series, there is no lock_page_lruvec_irqsave()
> yet, so this patch is out of order. Please don't do that. It's very
> hard to review patches that depend on later changes to make sense.
>

Sorry, I will be more careful on this.

>> Signed-off-by: Alex Shi <alex.shi@xxxxxxxxxxxxxxxxx>
>> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
>> Cc: linux-mm@xxxxxxxxx
>> Cc: linux-kernel@xxxxxxxxxxxxxxx
>> ---
>> mm/swap.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/mm/swap.c b/mm/swap.c
>> index 5341ae93861f..c36a10244d07 100644
>> --- a/mm/swap.c
>> +++ b/mm/swap.c
>> @@ -62,7 +62,7 @@ static void __page_cache_release(struct page *page)
>> if (PageLRU(page)) {
>> pg_data_t *pgdat = page_pgdat(page);
>> struct lruvec *lruvec;
>> - unsigned long flags;
>> + unsigned long flags = 0;
> Use unintialized_var() for these cases to make the intent clear.

Thanks for suggestion!