From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_PASS, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BC5B0C4360F for ; Wed, 20 Mar 2019 10:19:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 743DB2175B for ; Wed, 20 Mar 2019 10:19:43 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=nifty.com header.i=@nifty.com header.b="xgWtVGlO" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727247AbfCTKTm (ORCPT ); Wed, 20 Mar 2019 06:19:42 -0400 Received: from conssluserg-04.nifty.com ([210.131.2.83]:32504 "EHLO conssluserg-04.nifty.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726611AbfCTKTl (ORCPT ); Wed, 20 Mar 2019 06:19:41 -0400 Received: from mail-vk1-f172.google.com (mail-vk1-f172.google.com [209.85.221.172]) (authenticated) by conssluserg-04.nifty.com with ESMTP id x2KAJRfM010518; Wed, 20 Mar 2019 19:19:28 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-04.nifty.com x2KAJRfM010518 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1553077169; bh=RdDmVx4f5CM9ie4LdvGhrikDMUIxwrfomRlBvUzdRUw=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=xgWtVGlO8cgmsiqLEDkdcexT8DlnA/uPRF9HaMCmqdF5MFBaGcHg/d+ZBUokqR46U 95KXMWmYkCVuhpZON1IyAgTRd2jyN+tm6xAZCHHbkoX4pd8gVsnve+TOu3uGRmjPoL aiEROAe8rqfFw0TmS3NM/XLiOw9FhVFPOgW6zh+76p0IYLKblsTPSFfsoA0i51dUWI gW7PC7jC/gUVulurfIH6Bzm32r2toO4HHTD8NH+bOWKRQjp0C4mrY64G/x4/y5eEU5 NxCga6+xHtLt0w/dzG3KHGSd+o7qmzgoJBmA/YDPbdgHoKvKjQUUggTmlXSQaQ/bAM dcPEaFrWXAWrg== X-Nifty-SrcIP: [209.85.221.172] Received: by mail-vk1-f172.google.com with SMTP id k64so411932vke.1; Wed, 20 Mar 2019 03:19:28 -0700 (PDT) X-Gm-Message-State: APjAAAXsO5CvyV+RIIIkcM8EhwTuYtOKdIeLK++rhamRHWrU8R0HmI3j UFsmNRFxEi884VTLmVzhcsZHwbu1XySNQRsv37U= X-Google-Smtp-Source: APXvYqxKB4apuUA4RSwFZU70DWMnFW6LtlgZBAlrOxY7cwhPpTVdThjSSwlG71dnN1LC4c3aFsA/MNqj35fYYOqN/xM= X-Received: by 2002:a1f:ae07:: with SMTP id x7mr4168025vke.74.1553077166957; Wed, 20 Mar 2019 03:19:26 -0700 (PDT) MIME-Version: 1.0 References: <1553062828-27798-1-git-send-email-yamada.masahiro@socionext.com> In-Reply-To: From: Masahiro Yamada Date: Wed, 20 Mar 2019 19:18:50 +0900 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING To: Arnd Bergmann Cc: linux-arch , linux-s390 , Dave Hansen , Michael Ellerman , X86 ML , linux-mips@vger.kernel.org, Linux Kernel Mailing List , Paul Burton , Ingo Molnar , linux-mtd , Andrew Morton , linuxppc-dev , linux-arm-kernel Content-Type: multipart/mixed; boundary="000000000000d88c2b058483f4ba" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --000000000000d88c2b058483f4ba Content-Type: text/plain; charset="UTF-8" Hi Arnd, On Wed, Mar 20, 2019 at 6:39 PM Arnd Bergmann wrote: > > On Wed, Mar 20, 2019 at 7:41 AM Masahiro Yamada > wrote: > > > It is unclear to me how to fix it. > > That's why I ended up with "depends on !MIPS". > > > > > > MODPOST vmlinux.o > > arch/mips/mm/sc-mips.o: In function `mips_sc_prefetch_enable.part.2': > > sc-mips.c:(.text+0x98): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0x9c): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xbc): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xc8): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xdc): undefined reference to `mips_gcr_base' > > arch/mips/mm/sc-mips.o:sc-mips.c:(.text.unlikely+0x44): more undefined > > references to `mips_gcr_base' > > > > > > Perhaps, MIPS folks may know how to fix it. > > I would guess like this: > > diff --git a/arch/mips/include/asm/mips-cm.h b/arch/mips/include/asm/mips-cm.h > index 8bc5df49b0e1..a27483fedb7d 100644 > --- a/arch/mips/include/asm/mips-cm.h > +++ b/arch/mips/include/asm/mips-cm.h > @@ -79,7 +79,7 @@ static inline int mips_cm_probe(void) > * > * Returns true if a CM is present in the system, else false. > */ > -static inline bool mips_cm_present(void) > +static __always_inline bool mips_cm_present(void) > { > #ifdef CONFIG_MIPS_CM > return mips_gcr_base != NULL; > @@ -93,7 +93,7 @@ static inline bool mips_cm_present(void) > * > * Returns true if the system implements an L2-only sync region, else false. > */ > -static inline bool mips_cm_has_l2sync(void) > +static __always_inline bool mips_cm_has_l2sync(void) > { > #ifdef CONFIG_MIPS_CM > return mips_cm_l2sync_base != NULL; > Thanks, I applied the above, but I still see undefined reference to `mips_gcr_base' I attached .config to produce this error. I use prebuilt mips-linux-gcc from https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/8.1.0/ -- Best Regards Masahiro Yamada --000000000000d88c2b058483f4ba Content-Type: application/gzip; name="config.gz" Content-Disposition: attachment; filename="config.gz" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jth1y2vx0 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 --000000000000d88c2b058483f4ba-- From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_PASS, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A0A9DC43381 for ; Wed, 20 Mar 2019 10:57:03 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id DAABE2175B for ; Wed, 20 Mar 2019 10:57:02 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=nifty.com header.i=@nifty.com header.b="oiX5WKMq" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DAABE2175B Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=socionext.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 44PRgw5PNCzDqF1 for ; Wed, 20 Mar 2019 21:57:00 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; spf=softfail (mailfrom) smtp.mailfrom=socionext.com (client-ip=210.131.2.81; helo=conssluserg-02.nifty.com; envelope-from=yamada.masahiro@socionext.com; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=none (p=none dis=none) header.from=socionext.com Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=nifty.com header.i=@nifty.com header.b="oiX5WKMq"; dkim-atps=neutral Received: from conssluserg-02.nifty.com (conssluserg-02.nifty.com [210.131.2.81]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 44PQs10Pv2zDq61 for ; Wed, 20 Mar 2019 21:19:47 +1100 (AEDT) Received: from mail-vk1-f169.google.com (mail-vk1-f169.google.com [209.85.221.169]) (authenticated) by conssluserg-02.nifty.com with ESMTP id x2KAJR1t013358 for ; Wed, 20 Mar 2019 19:19:28 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-02.nifty.com x2KAJR1t013358 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1553077170; bh=RdDmVx4f5CM9ie4LdvGhrikDMUIxwrfomRlBvUzdRUw=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=oiX5WKMqrQC/kbP5YVRc8ZfM+n87j4ot1ekrxNmSKp8IpQOsNZtrCrkKMpZzcGyCm zZSSC+2Tc2bsTnpLt+Nqqs7OPY9fMOimTyrHu0PvXAwNZlGuUuShb7guTDatWCcCDC bEmveExE+PRL11zVIQ7NLSaCJD157GY4DdmPYrj6DAageKbb1ndF7dhtX6amMmX//W tY3MRYWeM2GkhCctTagryDong6UCklmz+RGiDQnmPlT8ODH78sHhiYD3eIdZPaaEV5 NwLiBuhDB9BQJsWGnIC2qtQjK0+HNws8cdsn4h9+mFwQO8t4JOcCKuXdaqouPztv43 4AA6RPXIUF1Rg== X-Nifty-SrcIP: [209.85.221.169] Received: by mail-vk1-f169.google.com with SMTP id x2so395805vkx.13 for ; Wed, 20 Mar 2019 03:19:28 -0700 (PDT) X-Gm-Message-State: APjAAAX48XBRKCMS/CCAor1o+9bt6MQoHOAvFXyL94KxtrjCgSFrKMKf i/CQ+utkBsSOGd47v7Zt0EzznPqCsGPcThlQ3/Y= X-Google-Smtp-Source: APXvYqxKB4apuUA4RSwFZU70DWMnFW6LtlgZBAlrOxY7cwhPpTVdThjSSwlG71dnN1LC4c3aFsA/MNqj35fYYOqN/xM= X-Received: by 2002:a1f:ae07:: with SMTP id x7mr4168025vke.74.1553077166957; Wed, 20 Mar 2019 03:19:26 -0700 (PDT) MIME-Version: 1.0 References: <1553062828-27798-1-git-send-email-yamada.masahiro@socionext.com> In-Reply-To: From: Masahiro Yamada Date: Wed, 20 Mar 2019 19:18:50 +0900 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING To: Arnd Bergmann Content-Type: multipart/mixed; boundary="000000000000d88c2b058483f4ba" X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-arch , linux-s390 , Dave Hansen , X86 ML , linux-mips@vger.kernel.org, Linux Kernel Mailing List , Paul Burton , Ingo Molnar , linux-mtd , Andrew Morton , linuxppc-dev , linux-arm-kernel Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" --000000000000d88c2b058483f4ba Content-Type: text/plain; charset="UTF-8" Hi Arnd, On Wed, Mar 20, 2019 at 6:39 PM Arnd Bergmann wrote: > > On Wed, Mar 20, 2019 at 7:41 AM Masahiro Yamada > wrote: > > > It is unclear to me how to fix it. > > That's why I ended up with "depends on !MIPS". > > > > > > MODPOST vmlinux.o > > arch/mips/mm/sc-mips.o: In function `mips_sc_prefetch_enable.part.2': > > sc-mips.c:(.text+0x98): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0x9c): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xbc): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xc8): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xdc): undefined reference to `mips_gcr_base' > > arch/mips/mm/sc-mips.o:sc-mips.c:(.text.unlikely+0x44): more undefined > > references to `mips_gcr_base' > > > > > > Perhaps, MIPS folks may know how to fix it. > > I would guess like this: > > diff --git a/arch/mips/include/asm/mips-cm.h b/arch/mips/include/asm/mips-cm.h > index 8bc5df49b0e1..a27483fedb7d 100644 > --- a/arch/mips/include/asm/mips-cm.h > +++ b/arch/mips/include/asm/mips-cm.h > @@ -79,7 +79,7 @@ static inline int mips_cm_probe(void) > * > * Returns true if a CM is present in the system, else false. > */ > -static inline bool mips_cm_present(void) > +static __always_inline bool mips_cm_present(void) > { > #ifdef CONFIG_MIPS_CM > return mips_gcr_base != NULL; > @@ -93,7 +93,7 @@ static inline bool mips_cm_present(void) > * > * Returns true if the system implements an L2-only sync region, else false. > */ > -static inline bool mips_cm_has_l2sync(void) > +static __always_inline bool mips_cm_has_l2sync(void) > { > #ifdef CONFIG_MIPS_CM > return mips_cm_l2sync_base != NULL; > Thanks, I applied the above, but I still see undefined reference to `mips_gcr_base' I attached .config to produce this error. I use prebuilt mips-linux-gcc from https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/8.1.0/ -- Best Regards Masahiro Yamada --000000000000d88c2b058483f4ba Content-Type: application/gzip; name="config.gz" Content-Disposition: attachment; filename="config.gz" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jth1y2vx0 H4sICJMSklwAA2NvbmZpZwCUPG1z2zbS3+9XcNKZm3bu0votTvo84w8gCEqoSIIBQMnOF45qK4mm tuyT5Pby759dkBRBaqH0mbmeQ+xi8bbvWOiHf/wQsdf989Nyv75fPj5+i76sNqvtcr96iD6vH1f/ GyUqKpSNRCLtz4CcrTev//3laf2yi979fP7z2dvt/Xk0W203q8eIP28+r7+8Qu/18+YfP/wD/vcD ND69AKHt/0TY6e0j9n/75f4++nHC+U/RByQCiFwVqZzUnNfS1AC5+dY1wUc9F9pIVdx8ODs/Ozvg ZqyYHEBnHokpMzUzeT1RVvWEWsCC6aLO2V0s6qqQhbSSZfKTSHpEqT/WC6VnfUtcySyxMhe1uLUs zkRtlLYAd0ucuC17jHar/etLvxakXYtiXjM9qTOZS3tzeYE70k5H5aUESlYYG6130eZ5jxS63pni LOsW9+ZN388H1Kyyiujs5lsbllns2jYmImVVZuupMrZgubh58+PmebP6yaNtFqz0yfWAOzOXJSdh pTLyts4/VqISxFy4VsbUuciVvquZtYxPYeMOvSsjMhmThFkFTOdD3G7D6US7199333b71VO/2xNR CC25O7xSq1h4HOSBzFQtaIhIU8GtnIuapSkwiPHOf8p0AjgGNqjWwogioWnwqSyHfJSonMnCp1Qk cOhNM2IM0VOluUhqO9WCJbKY+DvlD5SIuJqkhthupvkUREPxmVEVEKsTZtnxbB0zz+FYgZmyY7Aj IOaisIYA5srUVQmERScCdv202u6oc7GSz2pVCNh425MqVD39hCKQq8JfIzSWMIZKJCfW1vSSsIEj SgMScjLFQ3JL1NQWlVqIvLTQtRB+z659rrKqsEzf0ezeYB3xJS+rX+xy90e0h72IlpuHaLdf7nfR 8v7++XWzX2++jDYFOtSMcwVjjU4aT9gdUA8mpxKbBHmdCxAwQLUkkgVONpZZQ6/GSEpmYWrSqIxZ 6c7HLVDzKjLEAcN+1ADzFwCfoCnhJCnNZhpkv/uwCXvDjLOsZxAPUggQECMmPM6ksYNtmzX/ILUp KsUUxF+m9ub8vd+Oi83ZrQ+/6FlFFnYGmjQVYxqXY7EwfAozc5Ljz4pPtKpKevdRDZuSwQGSYCDI Z6WCKSBDW6UFrZzdwGgK3FAhBZ4aUBvAvRzkNiGRtMjYHWVOshl0nTuLpn1Did8sB8KNrvGMjU7q ySdfGUJDDA0Xg5bsU84GDbefRnA1+r4a2HNVgpiA8Ua9iYoD/uSs4AOpHqMZ+AexxikDzQ9GMwHF C3yXNIqzFmi4i04OeiN8CpHieVC01tOzDHQPbB/09vRrgwSCw0WJdEA2GPdUXVym/UcjXv13DqZd gjHVHr2JsGjH6iM133BD3+yzCU6hhRALSRsD1pNqrH+ja71WJzfj77rIpe9UTbzlZClspvZXywwc WOVPO62suB191qVHUpRqsEw5KViWehzr5uk3OBvnN5gpuCreQUmPA6WqK93o6g6czCVMs90vbwOA SMy0lv55zBDlLjf+hndtNb3dB7DbDZRP9FB8AsAU1HH5/pV2fl+aEPS1ER99as6vcK0kMViUSBJB UXLygyJYj90G1wjTqOc5TFLxgcnl52dXR6a0jSfK1fbz8/ZpublfReLP1QaMKQOzytGcgrfRWF1v jGZgcuLzvIHWzp6O3IKe+7MqbraAsongrzNbx3qg3U3GYkregdIQTdFoLAZW0RPReedj2nUK9hEN Xa1B8FQemLePiM4qmCTqkNwC0d6VTGPcM9AIVuSNKoPgQqaSHyk9cDVSmY2ckY7fZWk6RyFf3n9d b1YAflzdt7HggQgidiaTXIxDYBnYtJx2wJh+T7fb6cW7EOT9r5Rd8yczECqeX72/vaWdLp5fXwZg jh5XMQReNByCHzhpjv7YyFAMcX5jnz6FoXAEoghsHwTFVtLSmzHDTswrU6qYGFVcXnwf5/oqjFMC E8JfqcJbBIrAslMUeGASheCAomdCFrQIu/5zfXUeOKHitgTfMr64ODsNphmpzGF4Q3tYmoFozGj5 nMgaXB96SS2Q5ukW+OEEMLBTRsZ3VkD0PZVFwG1sMZjOBW07ehrqNI3vIpgFjHIKIZPWZsJU+iQV 0ODK0IzTosRyEiRSyDowCcc19vby15BcN/CrIFzOtLJyVuv4XeA8OJvLKq8VtwI8O6No6S2yvL7N dB0rUOInMMoTGE7CQMHDgGT8lRxHvtAEau3Xy8sPV4s5HWsOUeq5BJN7CvH68vpDPl+cJCZ+s2xS ajr70+K8P794x+P8NM7l1XUSm+8hvftg5t/DuT77GzgX38W5ujijD7hHePd9IpcnccAhgeC5SEDd XZ5dXlQhvELYiWC65vPJh8ur4IGYVANqlcbq9gokTWPs/TdwryncTiUuDPgUh/i4lEUbHLfwDjJd CDmZ2mMAeLUy1hCvgtGE0NRzV1zIq3Jpwe+BILp2UbLvbMdKoc/kJfu4mEPLlTc+N5oPWxoDjrMk kmMutWaqslTaYgIMs4yen5vkDAWLq6mAY7ED36rvNlW2zCqXdfAxim4ivcIANy1Gn7tIJKNiSkRo 1GaLExixJxJACBApVBuK1uD1+a7igpUYCrnExWjrsnM4MzibJklSX58Gvz8Jvnl/SKwNXEl/f1q3 c9x0eVFfXp6dERCQKbr5A9X87swngpuGNwjEyEegoxkcYQxnQoA/nAIPZ7YQbFYrcPuH0anLbLnJ eBEwg2jD1tIwCCfn/bXJgCMuL2KQrJnQhciG5P4/KPABQcnHLixoo7r9t5dVf4qOjBcrMgiFMENT X80GAVQPOL+e0SqxR7m+mlHRlkuuu1TfJ7B/brtuzs97hQEGFRQLMuBYIeCqRgBswxMptUiFdXca HqRTYEmVl7XN4hHBtOx2adgNVADAquPGRiwGhBCEuVCDgmrAKbaOtNIwBNfqWDJwtlreyuPWTDFY OeYX60wfg1E7jRbAjExaKT07BsCRmpsPh8wA6PZBTmXAJEfQobYcQ50OTjNmoRU0Ft7FeV1zL+FI K1o4jqoMDDboXmjsaW6uBstrWvFPzkqA+RcXF3RMBJAr2n8HyPkZHYcgaOj1e+M4vTEY+d31iQHC I5wNp0ztCdMo5lMvLQv/hhl4GSxxK2hfh2tmpk4EaH9ccMypBJIJtQIVmpbXV8eSgrkklY44EoSA lSXYMPALEjvQHQ6OCUYfIew6g9MQxBxohTyBiE+AA6JycsgOAWB4bwwETyQNfGLou6BMBjzsQQe8 6rWyIAZosdGZSQShcDBKn7kU8zGsyYaD41XwO6uIzuWkuQfPxFxk5uaiUfHx6y56fkE7vYt+LLn8 d1TynEv270iAwfl35P7P8p96/Q9IdaIl3mcDrQnjnpOX59VI8HOQuloXjYaBfSh6LUPB2e3N+Tsa ocvmfYfOAG1ADjYuaRPMh8RX+fzXahs9LTfLL6un1Wbf7UW/XEd9KmMwmy4DhOlziFx9JdZ6mQYZ kAC3kKMGl//75DzgXsJakJnJ0mlx6jI0r00mhKf5upZWH3rJD3fH5GCB7Ei9YDPh7p7JkUbUQplW APFs4AsvPsJOLITGS3rJJSZy23wpnaYG4zu5q3OVCCqp3ugDkBc4hKy5EuhOEH3N5hTzwykeKlkA lm5X/3ldbe6/Rbv75ePgThftQuvujFrqiZpj5YMGlWcD4PFN5wGIqUKiuSvmwL6hiy8SF7fRgHTT GpvqgjcIztf/+10U6E6YD63vyB4Ag2Hm7nrj7/dyYWBlJXXKg+0dbhGJ0W1MAH7YhQC8W3LwfPv1 BVAOi/GZ8fOY4aKH7frP0e1H62iDoQkmuUe+OJKWD4+rERVXW3F0HZOut09/LberKDkeOpU6XzBw HMEfywPFQxOlJmAqOlRijiKVtWA6u+N9uYFdfdkuo8/d2M2y/aExvVVh7dZRLn1QlbXc3n9d7yF6 fN2u3j6sXlabB1I1N97K8A7SmUHV3HsMZOs39OszFpP6xWlwdFI62xxjyDyiKmEgtDJAfGx3Z+PM QtOqhSUBg0tV1+Im4Cz7VKnZCIhpCvi2clKpiqjuQRcZ2aAtQhoZpibsU2laj2etxQTcRbQ26Fdg PYorSynHk2uvHP2mRtsfraDf5NEkFgwMgCw5ZjnxXrGtkiNItD4mZjAG2SGH4SaK+y84xD6eVDaF gkNwlzP1nSei76iTsVr5EXmzXNh9MD/uhGbyCExU/4wwwLC1yysFx6s6goK4xXMqmqI3nNRoD3GF 6BM314oQNVPbN/CnRghuAJJHhr0+jNZe3rW9IJz1I9RMoTcLEwUdkfiAxgVrGA/3ZRQCK88pSFND LLOcQkRjFXK+L8MQuLv9dUUGoRvtppyuKdXU9XREHYUcFN9Akhvlw9X87e/L3eoh+qNJe7xsnz+v W4+h14yA1uZQKD8IwlfQHlivyfnNmy//+ldfXmPrHKsffGXgSgQM3rHfeOEZ8EqVCcofi4fJ2CxO mBdUYc2P4UbCNn2sxLDQqqsHik2gLq2Hh2o7+5IiKyZaWvqqt8PCfA3tTCBGFwo5bUCHTIi2iEnz 6IbAqofUjNdoMMdcsuzItpTL7X6N9iOy315Ww0oEvFl3rj1L5uhvUDFZbhJletR+19EQEs04Gec+ NxWwKjL3X1cPr4+NMe6IfgSj0iTGsTYJt8SLpXrg7C4ehgkdIE4/UtbMFOc9HVm4rcZcfl25dP6o iLWBO/muRun+YxjZdwHsIEKdfeCw90EgXSFycrhu8CQkDBl31gu661F7H3W5oxH/Xd2/7pe/P65c +Xzk6lf23iHFskhzi5p3NHgPcC6/d3TQNPRK8KvJLHa+MPaaCkwY+PqgoWi4luVQfBtALg0VECJ1 JN4tKV89PW+/efHQsevU5uO8XYGGGqvbUDu6VNnIgIncaZ8Wx4e7zUhgapiN7fA8+1pmYAZK63oP E3TOUPCh4ORyotlIlkDn+148upFoHeJqWJhlqButbsOdicslCnmib67Ofr32/OhMgNxjwpYOZHL6 AvtTqRR9Df8prmjl98k0FVUk0PlwLife+Rl00C60y8cGK4QnVVnHouBTrLsgtqTwY1oza1Nd6JAd 8iLFav/X8/YPjF6OeAeObCYGNwD4DRzAPK+nKuTt8AvYepBOcG3YiVwDeBrEzG9TPaCB3y7OI2k4 qLtkTEOxsEMxVQzBZCY5bdIcTsOWp4hggZCxkgfqhgVevVClurI5jp4LyqYylDND50oAoTNUtVbg U9CrB7SyoMM7nIws5SngBBWWyKtbmn+Quq2K5iapz17dFSDTaiYD1dHYMVX0tXcL6wnTJHC3ajYN w0Sg2Ec2sw7krx30eEGuuTl/VHsgloXBrGp4BA/ZUfs7mLEQJyiGRYSXGJhMTrktBxxexX7Q0WnF Dn7z5v719/X9myH1PHlnyOJ8Wc6vhzw7v2550V2vBRgSkJrCbpSTOmG0jsRVX5864+uTh3xNnPJw DrksrwM8cE2dtu/SjFA6jgnA8WTH/OTD3Za1te7h+kI36bmlnn04kJH26DCgrb7WFEs4cIH22tly e1eKo96neNftICqoEjMOeKUQkFSH6FYYhhsxua6zxffGc2hgzgIlWMLi4z9MHYwt3hEORJYuJAV1 DRFiwMICcpN+oCOT8gQQ1FfCeYj5wAbaQC1iQu+iDb3hA/+NbM8uAiPEWiaT4DsKp2nMINpum0hi 84wV9Yezi3O6bjURvAjotCzjdLkdsyyjz+42UNuZsTJQV4DFjfTw15lalCwgZ0IIXNM7+loY98OF XfSSeaDsqzD4FEjhA1D6XOAkmYs9SbAqRTE3C2k5rRDnBt/9BTxBmDKWuIZtSF4G7CwutjD0kFND r8RtkJtpIujFIEZ2iU810VKcwio4+cxN+yUSOnWP6HwFfOvDkY7GV2Lmrh4+M4k/ZkO0FNiiffE7 9ICj/Wq3H+WAsEM5sxNBs9GU5ZolgWJqHuC9mGZXlsIKdEgFpPWMUzHPQmoBatlPyaUT5GwvLVBk rsE9ZkZbNLiHarHxhEQGHKjdG2xQl4FXbx0+F9oeHiLUqqgoJ/6AjXkqmKm7k0VfVkyS+HjKLshv Mm4NCvrRxNIOPk1pAmsJPcDtp68T5l2cH9NYQKREJYcYH+1u19KU8HACoDlGo8Zqn3196CFw/TtY N2+e1pvdfrt6rL/uPS/ugAoWjxbmAwaxPyQZ0wWoIes5pAhdiurEnmHghLs0dWVeWAzm50IXElpp g5nOZOABFcrnr7QR5EzSzikX5bQOpT6LNPCO3oATkdHujQs3UhpGOTyduTC2HtWtTbSC6TVv1YbG WcyDDxhSJjM1Mjm+vef4Cu23Xt0lqz/X9+R9Ycn5qG69v6xb37c9IjXOElTN662pyEr/GmfQXJfM Tm/e/LL7fb355evz/uXx9Yv34wdzm5f+9UDXAr5zVQzfXVlWJCwLPWmAkMSNerj6dL+2EL41fXxe Priby24zF3VT3OOl+G5BBA4EBz/3cMB2mYl2qVSaNkOjg8lyL4HnuVAoPE2hTcDHcghirgMOeIOA +r0lA+ozV3PKBTxUb+MD98qq0c8xgIvRJts64ROTQQqw+a7z3L29PBQWPTim8nOpmufGxvVEmhgL 1QZnKFGWsJQkrgJmRoHQ4CUdnfUqDKXcc5v4o8Cnf/tgA11qlTbgcV+m3x/3G2C0r82OsUb3EC/L 7W4katgdOMEVwtPdqx0WujzjRULztNJul5vdo/v9lihbfiMIunRseLYuLatpZyW1AQUbAsggRKdJ kJwxaUIrWJMHO7lDUoFX+gg8XMqAa9E4nEe7qVn+i1b5L+njcvc1uv+6fvFqNXyGSeWYD34TEOM4 MQkwEIjU4VdNhtyXSnT2XSZEFSH+Q3GKGbjuC5nYae27FsfQi5PQqyEUx5fnRNsF0VZYcCRv7TGE 5WCpjiULIKCLWWBRCG7LZYY8zwKPvBAWeEHrhDHG92VHx5ovX168uhu80mkOd3kP2uhIQDBZBIvE bSvHLq7PT9M70yi9IZs1ze2ld5gbWzRFux8OJWN2tBNuqmb1+Pnt/fNmv1xvVg8RoLaKlSosQkIm O7Wh5fQUFP47BXbq4gKnMJ5lst798VZt3nLc6LA3gUQSxSeXYaEuRBEqREP4GOioZ2WS6Oifzd8L rGGNnppbsMAeNR1CY5hS1kXAziC8iqngNLGeo+/KnfsoPsX7Dhv45SiA4v0b/rCKT6ApsKJBMxX/ NmjAa61ByAdtg9tW+B5c/MB3nvi/lQAN+EtJei7cNd5o+uhMjn5rpPevmA5mxduCgKMTK+a5iMzr y8vzdj8IrqG9HvrbjVCvd/eeQ9F7OVWe3+FKydFFwTNlKgwyYWEy9LMtJsTz5bxkoXfb/GK86OZC WZSos3bHS2sg9a+X/Pb6qJtd/Xe5iyQGca9P7pcTdl/BF32I9mjhkVT0iE/0H2Af1i/4z67KlT3u V9tllJYT5hXfPf+1QTc2enLOQvQjViWut+A1yAtXzd3UJWz2q8cohwX+M4LY0f2IXD/x/6PsWZsT x5X9K9T5tFs1exaTAObe2g9CNuATv2LZ4OSLi0mYCbVJSAGps/Pvr1qysWV3m9yqnZ1B3ZL1Vr+7 hQIUnVPZ9OmbiUtuqlu8jmKztBZWRXGbumt9ZHU4nVvN1UC+PT5jXSDxDx/HA1z58gEQZzm6pk78 Nx6J4PfGHXXpe7ffLl9RvvGCF5JQyyWtj7kdaOMuU7oif3bveBB3lbd6vQDV7gSjniAyXtuEeY6y UMaeK6jQoN6hutMM26NKIAyVtqCpe1B+Wnl8DX6TW+3vb4Pz9mP3bcCdP+TebbgBVIY+wugWXyW6 FL8MKnAkriAQZkoXMCEMVQOT/wZ+kCDRFYofLZeU+EIhCA4i2bYBfj1RaXUojbtIV5VvR2dhTJQF v4bhqf9fQRIQNPE6iu/N5V89OEl8rRnJqCq3ERrDwReEUUEj8Pe9dHXkEWpzLJ8vufhwiTfNRRo7 PSzrGqYzUehQS63eDvzduFd2ygTrrZTFLkUmMQ7aEZw/iknQOqcgwJwTJvbyW4Jw5ZJ9hIMQEeKp NMM/JsuLtZpHFQSSqL12U3y9Qz9ADLuV1K1+x57NK1dSjufj/vsnPD7iv/vz08uANSzAuyyZ/DiI g1Nz4ddu6ERJwXzGweLMjFnJQGHHilQQ++pSO2CPTdOjJkhuiTD1GA5synib5VkSJYZWTZcU4dy2 TT+/buV5EjFH8hXGdr7FHADnPIBdYsrEVHygNonS/QpnjtvyQ5HbCnvMjEoQGwMdsjyAqRcaY166 gRd6l3XDz2IwoxwfnVad7jfdxzKOZ32AVUkRqtA1IZM9AAGge7WlVcY2rocOzLNH4zzHQcAno5CA SXrajNgWrIOWdgip5vHENEW5E7Y9tooANXxu1YzMqKZtqHADfIQhS2mYC4bxUdOYuwk1BCRyrfOl +/+bePtmZjjJsty2pzPcS1ZupAiNNlo3B/c3eGg1m7yXBYVLWREkwdU+JnIY8ilFZyABNWyCggQL RGbGCxX5cu4WrVsUqek2PS+agMhniWQME3w5RCCM6Fjwe2ZZlDHXpVEO4rIcv1hFqjaPKXYP5Gx+ YRgPYRSLB0OY6mx4kfvL1mp066494yqRPws6QBJAQWPJW+bp3WY33mPrvtQlxWZMeXhfEG6uXdw5 xFzLDUNFVaI2n++lqMxQ3gmFJm8a1A0UGpJ3XcIDECfIxox7RYG8dM4oxVzZWhFkuZLVJ+5XEEtb n5zybQbklQdkLXm2FI7cg6Dz9DCNdbx6kGRqg0PZyJKKNZF1BvJnj9SLBUrChpOg5btNI0A4TBKY 2sObDrh+dqd5rqDGG80De5r3VNIWBNWQ63rle092hnvysaYHUr68JNyRj3Zf805s39ijUS885bZl 9bdwa/fDJ1NiZhZe7jrtyfR47GeCbFG9vEW+YQ8kii+A9LCGlsVpnDwlYeUTfhVuDZc0jnrPe8Hq 0f4CRkpP/+V1JzG0Dzuje3LfWz1xgZC+64GrB5KGy0eyd5jwUNHA1LWGOa7YB/JeniqP0x9fy4tX CJeEl3f0Ul43owT+j0sEYyI2hu9hhsWZmGtdvY6YYBjASxBnKX5jAvBOkqIEnwXg2F0yQahKAZ6k vm2N8beshuPGeACX/OjUzjGaAaDyj8GCVQMFus2a5hRgVlhTm3Wh3OGKPWhPUAkrXBd7NpoYYcu9 oARpgr7CIAdbtRLMvX4kyadMhlYvikhmU4KGaKDY11DkUZiOifCFTaTZNaSlPxkNMZ1chRDC9WgP semDyxc3iqkwAi6m9k3/WBKwN1ZukVcWUWRzAUb8rTBBXZR2X5nvFcF4QoRyVBjhaDrCCDcAzl3/ rpn0QVVIAnkhZHn7U24sonBk23iIIHVw+ciaUZ+CcTyyLMk6l4EaYW6Pbqxhm6bu4N0xP/Bw2VqF ci8v8s2GECpVSPL9HFs5vZ+9eNXXFeG5CUgzCKYeUNb+5MpO56vZ6AoKu+eWZSEzuvFZaFLx2vSx 2DiYZBzQL7IZJ5BvWb3mBiw1xUfpqhv7pAmd4RYWClKsiDues8SfWVN85LLq5A4XuLJkPB7hClRZ yxrifdnw8GaCXufmwANT7sDS6YSPh5SCo1kXl1fhHZXlOngQDgU7IYqZAOAC5xubveGe4BG+ui1x TRuUCNNEAe4tIlBGPL4tA8Fc6Q0iB/IhqFBKSOYrYJFKZhfMzHCCb+MtPPfamgau4zG91euaclmH Fu6KBbB/hj2wEWbQ2fyijqxs6KvSUY6yzUY1TV6a9SSRYk+RihICJ8gRHfTZiOOdB6jk1672XhjS LPmzmKGyk2Yl09+eb6zR1eGmxmc2vjUa4xcxgIg3XoJsEkToUZp9eHxwWOchenRk7/GuAMiyks2V ZhXP7YamGLg2it6IK1SWJhg2pLIEPIBh7zehWvv+rly5N3uwG/6t68b6++B8kNi7wfmlwkLkCdSr qTVQVOeVIwFid1szq8Ih2l13zX6894/Pc1cn3OB846xrfbDaHp+VAYD3ZzToKighUxPagyULXNSc gb9sj9un8+7YteZMU4NTX6PEXejlM7uI06bJvr75yUKd8uGv0Xhi9lyyraHW7TpkrO1iKfDFKcPm teylq28rdziwfAXLXcPiuGUJI0vuAhcz0jrut69dXVXZ70aoJBNgt2JDNoobuX8wY0G0ygLeL2yE TSSu9YJoXyBQZqYMX28xaALRbQL3goJ2Qgc2JPykmohMxJAaag2tXUV2NldR5CNj2/hl2ERDkjGY WGD867MU4o9VMsjw8P4HVJbYaqGVIhM5lWULMCJC0FtimAEiGoWN5Wm3KjgPCflHidGX6qJEKVWh EMj92ryXqNfQSsFJLK5isoSw89XghfALP77WCAcdBcSTcrylx+WJJZIHaGwV1YaQksgLrMxzhF/X seSgdPYk/BOrTV+Ol+RmRiTdgHilPZb9KZd/YrxROdf+A2pCNeLoKzEiYk3cECsR42IvIecCnwNB yckQ4/c0Hjy9Hp7+xnoqgYU1tm0dzJ162LXUXCXrI116Gy/89vlZWdvLE6s+fPq38Ukv5GmCM1nL 2Isof6ANThvpgJdsjYbSVDCwr2xGzqgLK9eI5qlvgiGbHENV+U0sCIDfygDUgeqiaIEbIpc4iauc EMAxkPwkOMr5D92P6fIefjkGHQagEpJckfaA5yyVl5JsXoymNs46Gyj4UlUo8/sRaHBw9nwF1kjA uuX2bIizsatNQDjtgzAzYPje2jDwkY2wyAoCBLt1CNl6XVDuW173DEWft2LWaD3a5+t5/+PzXYXl 77MhXzhaDlAsfDfnlAH+BWvlc8J/A3ACcIUirMAk2PFDInuRBK68ye3IKuLAw9tfpRBRUHicMCeX Tdy5QewT1uTQu3RyM8Mz+QBYJU3pSdwiUUQwJnglNs/HwyFlzabqds4rlKbgXnFzM86LVHDWM7Xp fZDbuIlE4i4zScJQNuwgEag8XTv7ZHncfrzsn07YLe0QkghZXjhxwd2uwSTkEap5B13E48Fv7PN5 fxjwQ1zZ6P6O56NmgTPw99+P2+OvwfHwed6/1w0tjtu33eD7548fkkFxutbhCyKWHeN3PiQwKeTW xeahPneSFcGiaACjGq24R6XiUMLRbhj0eSdssJY0l3EPV9wxIB0pdxiqWFiS1dyUxgLdVxYs5Xev r9v33eHzNACxXSeEE7R1cZcGeZfoCNSdh5DJYwfuxxFhGqrmIMXv+BJWbFaSCoYkd71Yc18tCKTC y7B7To0dIlmX4bF1bpmR2RB1EwNso6Z+zhad2YL5UUbncu+dj4fXV9hI3TtR1Z9Mc3me5SKR38lh S7QQGmC3BHdUClCewIsrxy/JUrJ9hZiCxmZDh6K4IEp6+kpHmnyOuSp5NrKGq7h3tJ6ILWuS9+Is 5PrKlnomJaonBSkleyh8sETo+3Ris8lkPJv2IsEnFMnRpnUuu6N0ZuKv29MJey7V5uxRLSoOg6Bm 1N506Lpp0L1Pwyh1/2egpkDe72zpDnSM5NNAvurKOv3753lQ2+cP3ra/qvty+3o6DL7vBu+73fPu +X8VndxsabV7/VD+cm+H426wf/9xMC+NEq+zFrq4h+ZrYpVi3qt4kNpywWjtY4UHER0pKqWJ5wmn T89Uocl/E458TSzhOMlw9iW0MR6+pokGgZMh3/pVROazzKH1fhXanXx0r2PxhzhRIZ9TRkSvaWK7 oZyb+WTUY1KQMcRlWR4h7237U3lkdl9odXM7vE8brsxaejaMF3doLLO+OucOIXtQj92GoCBLIK1V BmsWz3HpuYY7cjoZotPSsoY3Z12JL9Bq5gNP1HcDb0J3W0JHOOGobjMnSzPapkC4a0FYDqpr14vG Pavpu8soJdk7hdFzXVdblj9M+YReM/6g+C96VZwgygS9ZRap4xUupX5QcySZXElFi5hyitTqcUmx zNdLensQrIm6+xOI6rdW6fQIOl4NJdpA2uoejLbXaYtQEMqbRUB4jDzNes6RJ4BkXuByWEB4kLXp beM+qpnNeyyOIFaVnE/JdLf7fNn88cuv0/5p+6qjHWC7P4xiTYtx18MDTAF0yZwlYbUAIfHouyKJ fLfoCcil7kE/9kipY7YhUhkFBKfnBhAvkYprt5EniggepyP6e3PPp8J1g2459OYM5XESyV23TFSh iPtM4N9zgNfHmRIJmmeLBifSkDiFHKL94/uOZXnvISPUWUpBWNrcISMDMFgku2FmGpfr4sBsteSq no6H0+HHebD69bE7/rEe/PzcSbYB0wGkrO1dWC2lSvRaErRF7cxWSx0j31l4ArOn5/4d0HN+FN1l 7ejMHKKNJ27MzKDTwGmWqRp0/w5vb5JG5EoEq1hn0I42uw4NrYSD77W6wdJUtz1RGOY8kvRD1yXM e/+5e98/Df7zeDv9558BX2bYUS41NYUEF4B5iz8rbbTRGD9hbTzC9KaNRogZV5sqLHlndHqGxeHz SNiry9VXWYwKEdtDKjO3588jzOzAk7ObNaQLRjwmBRzE2587HdQccbHX9ZF4Xzooyu7tcN6B4zTW cwghlIIfe5cvST7eTmiymyQORHW4aCELWG512oSsy7+JX6fz7m0QyZ37sv/4fXD62D3tf1xiT9VS pbfXw09ZLA687WM4Px62z0+Htxbs8n3ekL9XMqIyVlEdxT/M4z8Xx90O8vrsBveHo3ePfWv/7yDH yu8/t6+yC+0+NGaBF2nXoiGHHBT/UJVK3duasHhRObvWkEcIBbs5OIlSr06UEI8GsYzxBrFiSO51 7JWOV7uEmG5qcCiWIHFieREmf1kNIffk5nYMuWaNgBbgfTG8sdFyazQs/FGrvFzQdjnkW6kyLhme BxDYnHzFtUpF/kglQUApCBcI+w7m5+Lz+0lt6uZSVkG4KPt0cBy5i0IGFAbtpAHaMBhpISjfa8Ao nT4LhzBrM1B6vgQaWy/I7eC+bR9ooMU5K0Z2GIC2kAil18SCAZJYEKYH4rtKrjGYUKalgBhx149S YKQcIuyH0jJxwrQvIFjiBOFx2fvz8bB/Nq740Ekij4gVy1BPvNLWRNvxbMBh+gmYZpTCwFkb7Q1D 2OuqACEogFDhCi8iLAl8L6DOhZJ1cR2prTNPC8iwoXd+4/pdM99zIGX4QpQZYerDKYvkc2WGXZK3 1qggIlVK2E2BRvmUkNuiGU5QFUBw0QV4EMs2WyDoTQS+YYz7XZBweQZZcFoduyVzJP5n7oyayPCb RIYgh/MqDmTjzvHk5EgYMfj/0KCcBkkigJzOedrzudDze6ouRp2a9eDQiQVyxkzpU5WVYepa4d6q 5jzIahq1EnNBZj/gmx/a8Ma2h/BAyUPcDrx+gYdR6i2MFXZ0EUaUaQhsKMOJZcG6VS7A+ywiLmnQ dizELTW5GkxMr9rTZhBcStZRRnUqEDqQb59eWso00cmRosEqNsyfztpRB7w+3/WlIKKZvKup0WTO AuuBE4k/Fyz9M0xb7V6mNm2NU2dpQmdlfcFu1K50YDxyXEi88tftzRSDexEYA4Dtxr/2p4Ntj2d/ WM2Inw3ULF3gjiFh2lkwTQ+cdp/PB5V8qDPCOkZPs+DOtB1TZaBJTv1WocolIxkxTye8q989AEri y3cSF9v5EG25+VXZePNnFZa1FpioqKyXM40LVRRODoFmMMbYBX02T1ydR6nBSMJf1E5X0ZfgeOtY F0afooRJNo6+vJjTA1vQMFfdGBR0RVeUIOXJSt20PX2d93Sn7zXouZ15wgICJO4zJlYEcN3zkECQ j5wCRkHP1MQ07D7Mb3uhExqa9H00Br0GfivK7bQm7ypqM1bmaOZ+rICqlvl7PWr9vjFiaKgS8jgp MJGnAKiTDUHVSiAm6lsq6+gYzMMbeliViLz1U37V7HbboEFkYRKb0SdUSY9yUAXfxkOze62HzFsI nflqRGCXYZW9UBFobp2i3Gxj47I7ybCqyON4nwArizkjgowrOHWdKaAab+fDqhTnbmq4zhUHce57 EK/0L3IYfb9Re7iZ31P+qMPLN569Brh6Nwv5bhqbtwmb3uD2VSbSFFeSGkg2oXpsIeGz20L60ue+ 0HF78pU+TXALsRbSVzpOKL1aSMTNYCJ9ZQomuJawhYTrwQ2k2c0XWpp9ZYFnhJOviXT7hT7ZU3qe JMkKG74giLlmMxalEm9jYQ6sgMMEN8LYNT5vtY9VBaDnoMKgN0qFcX309BapMOhVrTDoQ1Rh0Et1 mYbrg7Guj8aih3MXeXZBRPurwETiOh9CjHEgNiivsRKDu5DW7wpKmLoZEY79gpRELPWufewh8Xz/ yueWzL2KkriE5UWF4XFQlBP+WBVOmHm4stWYvmuDSrPkziMebMBpM1+la9bT53F//tU1gywTydQk oTaFhIBlEpSQ+W7mZV2cItcyBUjbS6FIQOGsILWTTnVK+XVpCVPhBK5QAuc08TjlGqNxe4Hok6/0 h5K5dVwIlA/SC5XwW2UpZS2+sYOGfw4yYXKFAzZ1ZP4LXwR//evX9m37DQIVf+zfv522P3YSYf/8 bf9+3v2ERft22r3u3z//+XZ62z79/e18eDv8Onzbfnxsj2+H44UYUVN+yT3Bj78+zofBE9iwHY6D l93rRzOdh0aWQ1waue6N4lG33Eib3ijsos79Ow6BExIa0q0ElCha2EVNmoKuugxFvJBwna6TPWFU 7+/iGMGGyPfIp81kcmUpESa2hLrcQTXfGqrDCXZ7VZaPkM+1U8OiFSF3MYQbUTYnotP8cmGN7CDz O4Aw8/FCrCex+pvuC7COKmM1Ulf9hd+v1Rpk6cpFYhWzz/PL7v28f1KRvd33JzgY4Pzx3/35ZcBO p8PTXoGc7XnbOSCcB93ZMKPsVJgrJv8bDePIf7BuhvgzezkyS0/IKf0KDsHaNJBGY5wAqZY4SjIx IcwGmjjyY5i7foki3Htv3ZkLV47ZCxVAK5mV1v/t8GyKTas5mhNRQErwAjN8r4Bpgs06mr3m0rk5 UsVPcOutEhwR/hKXTdw/hpyIuV1dH+7DJiHkEtWaghdFmnX1yCvI0FJNbWsadBzE1sXZCo5Y9fDK CNatuCJlgOKfu9O5+92E34ywjyhA71onPLWGjpmKrHXOyuegswTICWttZ+e2e0U6Y6StwJMb2PUL yruquskD58pxBQyCDa4xrpxUiXEz6m1DrBjGQNVQ+YXOyGXx2MIuZAnAeYoKHvSDISPHPCLkWRon XSbWrHcjbGLZuc5+4/uPF8M+5XLhCWQgsrRlNtLBCLO513NVsITfIg3P/WjTtkXr7GQWuJLLwHVY FxyR9r4IgIAlZK5oBnTYi86D2rluVuyRSDFdLSLzBevfdNXL1tuMSzjiXOBJ3MpT1N1tOPda7STC wLwCb6L2QlX2fh/H3emknek6tJgLmWVwCXj1XDwS9n0abN/27m7/sXdQErzqvXgeBZJnKNm+Px/e BuHn2/fdUVu9Vd6C3X0P2SDiBDXFrCYhmS8rO1AEQjwjGkaKjhtIHJcP1xid7/4H0gQlLtgVxQ8E TVtIDuXq9y+IoqTnv4ScEMGD23jA+dAjUwk9vXARIQNYYcGDmHgIAhcYXMUdl1nJu8A4m/sljsjm Jlo+Hs4aKWjd2pik5vDvuLDBI2sNcGhF4yA9AtTpJeEp3tRUG87LdnBOWCe2jV1tg7B2k0ty3O5Z 3R3PYNQoyXGdsey0//m+VQkQnl52T3/rHMRVw0q/VKSScC0FDYlh/NCFCyNFZQnXSSwbM0aJDyKI uPPQ/h6OrZuuPToRZDVgxKW3bGLupZCwU054PaKkDFxbl1TmchB1CZLKNTUXUW1Mx73Ci8CKpDAy VppwFNSxO5Jkm+SJvBRn47g1aSN3iTwD7KVZQbR10yJZ/q+wa2mKHIfBf4Xa0x5mqYGlWC5zSNJO J3TihDzopi8plu1iqQGG4lHF/vvVw+m2E8vcwFLctiNLsmJ9ggZ4D0UqFBAzDLAzVHxz4XmUKZI6 JpaoWcvWADliIYIHVOF7A1BEgj8qXOQxu9XSY34/lFFYwmu0hb5RJRV8xWD8wS0aQgxhuNXTwDh5 2zdbbJ7+P2wuzmdtdLuwnvPm0fnZrDFqSl9bl/VlPCO0tVNvxLTGyaX95k2rsBqHuQ3LrX0L1yLE QDj1UoqtXU7KImy2An8ltJ/ZWh4LEMA+v1Yw9Sa6OZAwNx62oyqnTfONje1OsSuNEFPQQmUxMTZp vX1shuFgHYUhqTIyu9aAxrR8SlFBXrwpOMXo93PxXeKvWDDM6mFDjnE4Ax76Ui1wlTipelk3VefO Sld63wPd2qLfdq6yARcacukKYrssOApseSgw4sZZ7cWVrZGLyok54P+hHampsOFc8UZdBUdSe5Mk xXboIjegUTUL4dwqVXbEi95wfvblxJd17tQfgH/ShV0sMaf69GDPGkss0wpWd4byQK0XnyfnkyYC MFCFSizeFi8hV9YatqBlJ2YHw/56GVrIceFQw4HjVSzyP+eraoiNSCxCxKSsF3ZQ3Kb1eyIZ9tXu 9Xn3ePTv7ei0UOvL68Pz+08Cbvrnafd2P/8aw0hclBfj+FncjBcd/MFchkvDmm5Uo2wf8P5L5Ljq c9UdAO5GH2/Ww5n1yYdqMvNQCH3CL3kGNGO2p/bHsYfH3R/vD0/GqXuj9bjj9ldfdhxfB0FP2jN1 hsnG/GYEUVaJBWacNnAyH9ZRo3+cfD89c6WpBkEoQSGUUmpDtKCOIwFLsddwDED0mjKuCl9ggUdt X3jKFMIAtdNhIq5hmW8VzLDI9eSCLvcC7ie6fnjZr4wmSZcHD9VhoXkPlXbRqcygqiZR5vqPIiXs UwcRJqKAK2vniViN+9ueBqj8++eJj4tzuG3LhyPA25UEP8x5hVymdrH7++P+nvfLQfQp7R7RFNtc SNPhLpGRdLWXh7qp1lo4ARK5rvK20mKhPPqVKr5UiVRWsehjvpglfWM0kwcjXsDiz1/MSAkMAPpP VnAERaQKmetaQCgiIqc1gbgJzqxZT5YMdBmETFdiy/JlVnoLE1gzpkHjPeu0qNYe8bbJnp5WURtp 5jqkRCUJuxMRGPlrA23q3rkznWeTwrgcz0ZZOyp+3f38eGENlN0+309y0dIOr/v1NfTUwVsX0suZ OGS9xuKNrYA8fuVFPLMEELMtYf9O67n76Jgt0sOOc4loNKq+OzQTOs78Ch41z8TUJRsxQ5wh0lYB AcCfXSlVe8+3+DFov62Pfn97eXgmCMJvR08f77vPHfyxe787Pj62qqpSmgP1vSSbv/ctLHMIwjKm M/jPUNgHzjEwcPSa+05thMQoIz2e9Nbpdvqyk/WamUBDVOs6EnKTmJdGLusxZmLvELqDdf+iL1xC CoAZ10mAWsdfBQFH7AMZK+EwD48fZllXEB3aj/5O0C7BBMGCYtAYZC2AH2rUImvd0EwldC2jy/Kv OIRiu0yk7JVcCRBgzJM0MBesseU6AxyvTXq/cQMC6tlUXnLkkN6LxYKKGtYdVnXUAqcnNp1eh72F sFFdtYELyUZ0r4y30Mz8hAknpyeBpcbToRAlgVFmVVcXrPM7NeaOernHVR9U01BVgkt2cbzMJkcl yINRD53cdJWvSBFZq7TX7EXRelnHMpe6bKI68/OM3m86rrjTAVupkrC9wcXE89uEBXNY6DUiJzgk 2r6NwTgH5kHu5UDkvgk41m10lei4XjOJmMzdb6UapUpwV8Gvg0OCVF4ayGA701BHbGQCDNka3laI wfj9oxPKnEIWnsE956UVYJDp+aHV0QyDajz9IBRNhraHAtm60pMjGrcjPGFHeOX8gJR2O7LDuw4y siEOLMQIcpZXg6x0D+I0xLAHsjJqfAjpI7Q5ahoUmyk4SLFaCFm39A2AYt2tBCNJLCI1Ho0GGZeA Qozxq7NMp9xb8I+GMNsYXwmbMhpypjaYihCYEwcn+JKfIF70iQQYOyGdmBF/8Wztj5UTneMiQToo TAFOiTj6XkjHJuqGQo4y3eeiuxwNfvTqcGcG1lP6ZkfUXEB2S3PwRWGCfvl1+8BaMeBmBMbAqYKB dZLjGwyUqMoE9FNQKCJ0voQjFjwvCh0dMzUh/2GEr+lnybkH5RCVdaHE4yaFSVfLhRM0xP99Hx/H kGof02ELjhQdBiUit2APUT2P81NRkS91qeZmCUxCWkTLdm6IknJR5FphcKmYtf74bXf7+vjf3a9n 68Pd+ARKY5MvhA92xm+XNQAn8vogYP4H33byBl/SAAA= --000000000000d88c2b058483f4ba-- From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7B625C43381 for ; Wed, 20 Mar 2019 10:19:58 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 483E521850 for ; Wed, 20 Mar 2019 10:19:58 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="o70vxIBy"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=nifty.com header.i=@nifty.com header.b="oiX5WKMq" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 483E521850 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=socionext.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:To: Subject:Message-ID:Date:From:In-Reply-To:References:MIME-Version:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=jMZAEnRFHiG/q0TSblSExjeUZTc1D5x/G9QvsSuVDTw=; b=o70vxIByF8ZXMSosZJ+q4jfQI FMjCIXz44tCVcHfGvfKAVkExA1QpZl1JIxKeunzKRie8Fvbu2hcScJ/uIfe0kViu7ctkHjTc0nLor BqNN2H+GUSEOqor0xzboSBczyw8GSAcf9LaWzkHKjuvfDDcViLOtV6VN8JW4BHBb0HWBbmXJ8t7bP p0SeqbKsR0cuRqumIVpY4ePRTeIqM5Sfd3FOQt1m/aRfIjOQWVTHjShsDbMFia2LCzrZ+/aXRLtME nCmQ0b/paiLpMiu1tkEQS4lKOjAy9UT1DvZklHRmiKmZBbLuL2TBMpKZsf8ID5y8Iy5mB/zm1dzsb 8ApT7TiIA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1h6YKB-00088a-1k; Wed, 20 Mar 2019 10:19:55 +0000 Received: from conssluserg-02.nifty.com ([210.131.2.81]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1h6YK1-0007zh-6p; Wed, 20 Mar 2019 10:19:47 +0000 Received: from mail-vk1-f171.google.com (mail-vk1-f171.google.com [209.85.221.171]) (authenticated) by conssluserg-02.nifty.com with ESMTP id x2KAJRw1013356; Wed, 20 Mar 2019 19:19:28 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-02.nifty.com x2KAJRw1013356 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1553077170; bh=RdDmVx4f5CM9ie4LdvGhrikDMUIxwrfomRlBvUzdRUw=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=oiX5WKMqrQC/kbP5YVRc8ZfM+n87j4ot1ekrxNmSKp8IpQOsNZtrCrkKMpZzcGyCm zZSSC+2Tc2bsTnpLt+Nqqs7OPY9fMOimTyrHu0PvXAwNZlGuUuShb7guTDatWCcCDC bEmveExE+PRL11zVIQ7NLSaCJD157GY4DdmPYrj6DAageKbb1ndF7dhtX6amMmX//W tY3MRYWeM2GkhCctTagryDong6UCklmz+RGiDQnmPlT8ODH78sHhiYD3eIdZPaaEV5 NwLiBuhDB9BQJsWGnIC2qtQjK0+HNws8cdsn4h9+mFwQO8t4JOcCKuXdaqouPztv43 4AA6RPXIUF1Rg== X-Nifty-SrcIP: [209.85.221.171] Received: by mail-vk1-f171.google.com with SMTP id d15so405789vka.8; Wed, 20 Mar 2019 03:19:28 -0700 (PDT) X-Gm-Message-State: APjAAAU3YBRb9FFrHEumXSzBuVEY9qwJpXACCPs/yBA7aoT/6RFf6IRE ear0+qbStxeWSqxx83GUDqx1eeMIqWrDue8tItM= X-Google-Smtp-Source: APXvYqxKB4apuUA4RSwFZU70DWMnFW6LtlgZBAlrOxY7cwhPpTVdThjSSwlG71dnN1LC4c3aFsA/MNqj35fYYOqN/xM= X-Received: by 2002:a1f:ae07:: with SMTP id x7mr4168025vke.74.1553077166957; Wed, 20 Mar 2019 03:19:26 -0700 (PDT) MIME-Version: 1.0 References: <1553062828-27798-1-git-send-email-yamada.masahiro@socionext.com> In-Reply-To: From: Masahiro Yamada Date: Wed, 20 Mar 2019 19:18:50 +0900 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING To: Arnd Bergmann Content-Type: multipart/mixed; boundary="000000000000d88c2b058483f4ba" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190320_031945_509877_DB9F05B3 X-CRM114-Status: GOOD ( 10.02 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-arch , linux-s390 , Dave Hansen , Michael Ellerman , X86 ML , linux-mips@vger.kernel.org, Linux Kernel Mailing List , Paul Burton , Ingo Molnar , linux-mtd , Andrew Morton , linuxppc-dev , linux-arm-kernel Sender: "linux-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org --000000000000d88c2b058483f4ba Content-Type: text/plain; charset="UTF-8" Hi Arnd, On Wed, Mar 20, 2019 at 6:39 PM Arnd Bergmann wrote: > > On Wed, Mar 20, 2019 at 7:41 AM Masahiro Yamada > wrote: > > > It is unclear to me how to fix it. > > That's why I ended up with "depends on !MIPS". > > > > > > MODPOST vmlinux.o > > arch/mips/mm/sc-mips.o: In function `mips_sc_prefetch_enable.part.2': > > sc-mips.c:(.text+0x98): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0x9c): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xbc): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xc8): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xdc): undefined reference to `mips_gcr_base' > > arch/mips/mm/sc-mips.o:sc-mips.c:(.text.unlikely+0x44): more undefined > > references to `mips_gcr_base' > > > > > > Perhaps, MIPS folks may know how to fix it. > > I would guess like this: > > diff --git a/arch/mips/include/asm/mips-cm.h b/arch/mips/include/asm/mips-cm.h > index 8bc5df49b0e1..a27483fedb7d 100644 > --- a/arch/mips/include/asm/mips-cm.h > +++ b/arch/mips/include/asm/mips-cm.h > @@ -79,7 +79,7 @@ static inline int mips_cm_probe(void) > * > * Returns true if a CM is present in the system, else false. > */ > -static inline bool mips_cm_present(void) > +static __always_inline bool mips_cm_present(void) > { > #ifdef CONFIG_MIPS_CM > return mips_gcr_base != NULL; > @@ -93,7 +93,7 @@ static inline bool mips_cm_present(void) > * > * Returns true if the system implements an L2-only sync region, else false. > */ > -static inline bool mips_cm_has_l2sync(void) > +static __always_inline bool mips_cm_has_l2sync(void) > { > #ifdef CONFIG_MIPS_CM > return mips_cm_l2sync_base != NULL; > Thanks, I applied the above, but I still see undefined reference to `mips_gcr_base' I attached .config to produce this error. I use prebuilt mips-linux-gcc from https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/8.1.0/ -- Best Regards Masahiro Yamada --000000000000d88c2b058483f4ba Content-Type: application/gzip; name="config.gz" Content-Disposition: attachment; filename="config.gz" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jth1y2vx0 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 --000000000000d88c2b058483f4ba Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/ --000000000000d88c2b058483f4ba-- From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BE312C10F05 for ; Wed, 20 Mar 2019 10:19:58 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8C66521850 for ; Wed, 20 Mar 2019 10:19:58 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="TPfYBM9H"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=nifty.com header.i=@nifty.com header.b="oiX5WKMq" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8C66521850 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=socionext.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:To: Subject:Message-ID:Date:From:In-Reply-To:References:MIME-Version:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=IGmVAS2KCh96cdWGcmCl80U46GZOnXoJ3a2vYD8cBR8=; b=TPfYBM9Had3CEZjyau6v8a10w +27CJQcKQM1oaXujHXrrA2Olj4bZPJruGBoDhnJkh/ihCSztNv/a+nPTZvB3OouHBjZgeVlGwkKvn 8opeHo6NLjs7C7qTRfDtrHTd5SpCjhzcZ2qmQbeLFngH7kobAhxP9ifj/8oFDeKP//rxPBMVvkGpA 50/Y3pnsbv/SAyHBrFZ4v21TjKO0uzwJ0Iq2XeILwR6piVNpD2hvncLtP3PVAiMo87sqzpu+MMk0I QrrXwvFII2waOZI+e+ziCPuWgXgnsznfRNnXxLy6KPNm87YboufYdrTrCNluxYaEMymr2HbI4KKsm 4fqN1mTfA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1h6YK4-00080g-Nj; Wed, 20 Mar 2019 10:19:48 +0000 Received: from conssluserg-02.nifty.com ([210.131.2.81]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1h6YK1-0007zh-6p; Wed, 20 Mar 2019 10:19:47 +0000 Received: from mail-vk1-f171.google.com (mail-vk1-f171.google.com [209.85.221.171]) (authenticated) by conssluserg-02.nifty.com with ESMTP id x2KAJRw1013356; Wed, 20 Mar 2019 19:19:28 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-02.nifty.com x2KAJRw1013356 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1553077170; bh=RdDmVx4f5CM9ie4LdvGhrikDMUIxwrfomRlBvUzdRUw=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=oiX5WKMqrQC/kbP5YVRc8ZfM+n87j4ot1ekrxNmSKp8IpQOsNZtrCrkKMpZzcGyCm zZSSC+2Tc2bsTnpLt+Nqqs7OPY9fMOimTyrHu0PvXAwNZlGuUuShb7guTDatWCcCDC bEmveExE+PRL11zVIQ7NLSaCJD157GY4DdmPYrj6DAageKbb1ndF7dhtX6amMmX//W tY3MRYWeM2GkhCctTagryDong6UCklmz+RGiDQnmPlT8ODH78sHhiYD3eIdZPaaEV5 NwLiBuhDB9BQJsWGnIC2qtQjK0+HNws8cdsn4h9+mFwQO8t4JOcCKuXdaqouPztv43 4AA6RPXIUF1Rg== X-Nifty-SrcIP: [209.85.221.171] Received: by mail-vk1-f171.google.com with SMTP id d15so405789vka.8; Wed, 20 Mar 2019 03:19:28 -0700 (PDT) X-Gm-Message-State: APjAAAU3YBRb9FFrHEumXSzBuVEY9qwJpXACCPs/yBA7aoT/6RFf6IRE ear0+qbStxeWSqxx83GUDqx1eeMIqWrDue8tItM= X-Google-Smtp-Source: APXvYqxKB4apuUA4RSwFZU70DWMnFW6LtlgZBAlrOxY7cwhPpTVdThjSSwlG71dnN1LC4c3aFsA/MNqj35fYYOqN/xM= X-Received: by 2002:a1f:ae07:: with SMTP id x7mr4168025vke.74.1553077166957; Wed, 20 Mar 2019 03:19:26 -0700 (PDT) MIME-Version: 1.0 References: <1553062828-27798-1-git-send-email-yamada.masahiro@socionext.com> In-Reply-To: From: Masahiro Yamada Date: Wed, 20 Mar 2019 19:18:50 +0900 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING To: Arnd Bergmann Content-Type: multipart/mixed; boundary="000000000000d88c2b058483f4ba" X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190320_031945_509877_DB9F05B3 X-CRM114-Status: GOOD ( 10.02 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-arch , linux-s390 , Dave Hansen , Michael Ellerman , X86 ML , linux-mips@vger.kernel.org, Linux Kernel Mailing List , Paul Burton , Ingo Molnar , linux-mtd , Andrew Morton , linuxppc-dev , linux-arm-kernel Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org --000000000000d88c2b058483f4ba Content-Type: text/plain; charset="UTF-8" Hi Arnd, On Wed, Mar 20, 2019 at 6:39 PM Arnd Bergmann wrote: > > On Wed, Mar 20, 2019 at 7:41 AM Masahiro Yamada > wrote: > > > It is unclear to me how to fix it. > > That's why I ended up with "depends on !MIPS". > > > > > > MODPOST vmlinux.o > > arch/mips/mm/sc-mips.o: In function `mips_sc_prefetch_enable.part.2': > > sc-mips.c:(.text+0x98): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0x9c): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xbc): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xc8): undefined reference to `mips_gcr_base' > > sc-mips.c:(.text+0xdc): undefined reference to `mips_gcr_base' > > arch/mips/mm/sc-mips.o:sc-mips.c:(.text.unlikely+0x44): more undefined > > references to `mips_gcr_base' > > > > > > Perhaps, MIPS folks may know how to fix it. > > I would guess like this: > > diff --git a/arch/mips/include/asm/mips-cm.h b/arch/mips/include/asm/mips-cm.h > index 8bc5df49b0e1..a27483fedb7d 100644 > --- a/arch/mips/include/asm/mips-cm.h > +++ b/arch/mips/include/asm/mips-cm.h > @@ -79,7 +79,7 @@ static inline int mips_cm_probe(void) > * > * Returns true if a CM is present in the system, else false. > */ > -static inline bool mips_cm_present(void) > +static __always_inline bool mips_cm_present(void) > { > #ifdef CONFIG_MIPS_CM > return mips_gcr_base != NULL; > @@ -93,7 +93,7 @@ static inline bool mips_cm_present(void) > * > * Returns true if the system implements an L2-only sync region, else false. > */ > -static inline bool mips_cm_has_l2sync(void) > +static __always_inline bool mips_cm_has_l2sync(void) > { > #ifdef CONFIG_MIPS_CM > return mips_cm_l2sync_base != NULL; > Thanks, I applied the above, but I still see undefined reference to `mips_gcr_base' I attached .config to produce this error. I use prebuilt mips-linux-gcc from https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/8.1.0/ -- Best Regards Masahiro Yamada --000000000000d88c2b058483f4ba Content-Type: application/gzip; name="config.gz" Content-Disposition: attachment; filename="config.gz" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jth1y2vx0 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 --000000000000d88c2b058483f4ba Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel --000000000000d88c2b058483f4ba--