From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Morton Subject: Re: [PATCH] [ALPHA] Redefine ATOMIC_INIT and ATOMIC64_INIT to drop the casts Date: Wed, 15 Aug 2012 15:03:28 -0700 Message-ID: <20120815150328.e1fb3676.akpm@linux-foundation.org> References: <1343042420.3027.11.camel@dabdike.int.hansenpartnership.com> <20120723114258.GV9222@suse.de> <20120723122905.GA22476@localhost> <20120724074844.GA9519@localhost> <1343193053.3139.6.camel@dabdike> <20120802150209.GA26601@localhost> <502707D5.7020602@orcon.net.nz> <20120812021405.GB8442@localhost> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20120812021405.GB8442@localhost> Sender: linux-parisc-owner@vger.kernel.org List-ID: Content-Type: text/plain; charset="us-ascii" To: Fengguang Wu Cc: Michael Cree , linux-alpha@vger.kernel.org, Richard Henderson , Ivan Kokshaysky , Matt Turner , Tony Luck , James Bottomley , John David Anglin , Mel Gorman , kernel-janitors@vger.kernel.org, Kyle McMartin , LKML , Parisc List , David Miller On Sun, 12 Aug 2012 10:14:05 +0800 Fengguang Wu wrote: > From: Mel Gorman > > The following build error occurred during an alpha build: > > net/core/sock.c:274:36: error: initializer element is not constant > > Dave Anglin says: > > Here is the line in sock.i: > > > > struct static_key memalloc_socks = ((struct static_key) { .enabled = > > ((atomic_t) { (0) }) }); > > The above line contains two compound literals. It also uses a designated > initializer to initialize the field enabled. A compound literal is not a > constant expression. > > The location of the above statement isn't fully clear, but if a compound > literal occurs outside the body of a function, the initializer list must > consist of constant expressions. > > Cc: > Signed-off-by: Mel Gorman > Signed-off-by: Fengguang Wu I'll remvoe the Cc:stable from this one - the regression is post-3.5.