From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752109AbbCWDLo (ORCPT ); Sun, 22 Mar 2015 23:11:44 -0400 Received: from ozlabs.org ([103.22.144.67]:54219 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751993AbbCWDLm (ORCPT ); Sun, 22 Mar 2015 23:11:42 -0400 In-Reply-To: <20150205193604.24669.67159.stgit@localhost.localdomain> To: Hari Bathini , Tony Luck , Kees Cook , Anton Vorontsov , lkml , linuxppc-dev , Colin Cross , From: Michael Ellerman Cc: Mahesh J Salgaonkar Subject: Re: [v5,1/4] powerpc/nvram: move generic code for nvram and pstore Message-Id: <20150323031141.5E9B9140142@ozlabs.org> Date: Mon, 23 Mar 2015 14:11:41 +1100 (AEDT) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 2015-05-02 at 19:36:04 UTC, Hari Bathini wrote: > With minor checks, we can move most of the code for nvram > under pseries to a common place to be re-used by other > powerpc platforms like powernv. This patch moves such > common code to arch/powerpc/kernel/nvram_64.c file. > > Signed-off-by: Hari Bathini > --- > arch/powerpc/include/asm/nvram.h | 50 ++ > arch/powerpc/include/asm/rtas.h | 4 > arch/powerpc/kernel/nvram_64.c | 656 ++++++++++++++++++++++++++++++++ > arch/powerpc/platforms/pseries/nvram.c | 665 -------------------------------- > 4 files changed, 714 insertions(+), 661 deletions(-) > > diff --git a/arch/powerpc/kernel/nvram_64.c b/arch/powerpc/kernel/nvram_64.c > index 34f7c9b..42e5c6a 100644 > --- a/arch/powerpc/kernel/nvram_64.c > +++ b/arch/powerpc/kernel/nvram_64.c > @@ -26,6 +26,9 @@ ... > +/* Derived from logfs_compress() */ > +static int nvram_compress(const void *in, void *out, size_t inlen, > + size_t outlen) > +{ > + int err, ret; > + > + ret = -EIO; > + err = zlib_deflateInit2(&stream, COMPR_LEVEL, Z_DEFLATED, WINDOW_BITS, > + MEM_LEVEL, Z_DEFAULT_STRATEGY); > + if (err != Z_OK) > + goto error; This fails the build for ppc64e_defconfig: arch/powerpc/kernel/built-in.o: In function `.oops_to_nvram': nvram_64.c:(.text+0x12148): undefined reference to `.zlib_deflateInit2' nvram_64.c:(.text+0x12178): undefined reference to `.zlib_deflate' nvram_64.c:(.text+0x1218c): undefined reference to `.zlib_deflateEnd' arch/powerpc/kernel/built-in.o: In function `.nvram_init_oops_partition': (.init.text+0x41e0): undefined reference to `.zlib_deflate_workspacesize' make: *** [vmlinux] Error 1 It used to be OK because PSERIES selects ZLIB_DEFLATE. I decided to just force ZLIB_DEFLATE on for PPC64. That will add ~22K to the ppc64e kernel image. Scott, if you guys are bothered by that let me know and we can add some #ifdefs to avoid it. cheers