On Wed, 18 Nov 2015 10:39:23 -0800 "Shi, Yang" <yang.shi@xxxxxxxxxx> 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, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>