Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756727AbbKRSzW (ORCPT ); Wed, 18 Nov 2015 13:55:22 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:43168 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752988AbbKRSzV (ORCPT ); Wed, 18 Nov 2015 13:55:21 -0500 Date: Wed, 18 Nov 2015 10:55:17 -0800 From: Andrew Morton To: "Shi, Yang" Cc: Tejun Heo , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linaro-kernel@lists.linaro.org Subject: Re: [PATCH] writeback: initialize m_dirty to avoid compile warning Message-Id: <20151118105517.2947aaa2.akpm@linux-foundation.org> In-Reply-To: <564CC5DB.8000104@linaro.org> References: <1447439201-32009-1-git-send-email-yang.shi@linaro.org> <20151117153855.99d2acd0568d146c29defda5@linux-foundation.org> <20151118181142.GC11496@mtj.duckdns.org> <564CC314.1090904@linaro.org> <20151118183344.GD11496@mtj.duckdns.org> <564CC5DB.8000104@linaro.org> X-Mailer: Sylpheed 2.7.1 (GTK+ 2.18.9; x86_64-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2001 Lines: 54 On Wed, 18 Nov 2015 10:39:23 -0800 "Shi, Yang" wrote: > On 11/18/2015 10:33 AM, Tejun Heo wrote: > > Hello, > > > > On Wed, Nov 18, 2015 at 10:27:32AM -0800, Shi, Yang wrote: > >>> This was the main reason the code was structured the way it is. If > >>> cgroup writeback is not enabled, any derefs of mdtc variables should > >>> trigger warnings. Ugh... I don't know. Compiler really should be > >>> able to tell this much. > >> > >> Thanks for the explanation. It sounds like a compiler problem. > >> > >> If you think it is still good to cease the compile warning, maybe we could > > > > If this is gonna be a problem with new gcc versions, I don't think we > > have any other options. :( > > > >> just assign it to an insane value as what Andrew suggested, maybe > >> 0xdeadbeef. > > > > I'd just keep it at zero. Whatever we do, the effect is gonna be > > difficult to track down - it's not gonna blow up in an obvious way. > > Can you please add a comment tho explaining that this is to work > > around compiler deficiency? > > Sure. > > Other than this, in v2, I will just initialize m_dirty since compiler > just reports it is uninitialized. gcc-4.4.4 and gcc-4.8.4 warn about all three variables. --- a/mm/page-writeback.c~writeback-initialize-m_dirty-to-avoid-compile-warning-fix +++ a/mm/page-writeback.c @@ -1542,7 +1542,9 @@ static void balance_dirty_pages(struct a for (;;) { unsigned long now = jiffies; unsigned long dirty, thresh, bg_thresh; - unsigned long m_dirty = 0, m_thresh = 0, m_bg_thresh = 0; + unsigned long m_dirty = 0; /* stop bogus uninit warnings */ + unsigned long m_thresh = 0; + unsigned long m_bg_thresh = 0; /* * Unstable writes are a feature of certain networked _ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/