From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753977AbdK2Jcx (ORCPT ); Wed, 29 Nov 2017 04:32:53 -0500 Received: from mail-by2nam01on0081.outbound.protection.outlook.com ([104.47.34.81]:11712 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752728AbdK2Jct (ORCPT ); Wed, 29 Nov 2017 04:32:49 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Yuri.Norov@cavium.com; Date: Wed, 29 Nov 2017 12:32:25 +0300 From: Yury Norov To: Will Deacon Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Alex Matveev , Alexander Potapenko , Andi Kleen , Ard Biesheuvel , Catalin Marinas , Kees Cook , Mark Rutland , Maxim Kuvyrkov , Nick Desaulniers , Peter Zijlstra , Sami Tolvanen , Stephen Boyd Subject: Re: [PATCH] arm64: fix missing 'const' qualifiers Message-ID: <20171129093225.tq2cbg6l6yupkeit@yury-thinkpad> References: <20171125094127.7536-1-ynorov@caviumnetworks.com> <20171128183355.GO9266@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20171128183355.GO9266@arm.com> User-Agent: NeoMutt/20170113 (1.7.2) X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: VI1PR08CA0112.eurprd08.prod.outlook.com (2603:10a6:800:d4::14) To CY4PR0701MB3825.namprd07.prod.outlook.com (2603:10b6:910:94::31) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: cd6cca02-a43a-41ad-86fa-08d5370c26eb X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603199);SRVR:CY4PR0701MB3825; X-Microsoft-Exchange-Diagnostics: 1;CY4PR0701MB3825;3:L2ZMvINCCgsspuhcxAxUMbl1Gob2WgJE2NSRZBgi83A2IT+kFE8/y2gPjy4FH4rjGgGgpwDs7kx6r2aKVvFFm9fMm9MYCxgLvgyr6RyKIw1nCnTNfgEwA1hjinr32Ubz2IG6njQYoafm5C+if57oNjQxNDrXYimPNrAVkcQ56lfAny2kE+2u3Bgu7I2kD+XGRCtpGwLK10gZXr6F62+4nOOcRkyGNNv7q/38M117q8tVMghVJSXlNGM/VxXPfiUA;25:XYdN5oWS+Y1oneDl2zdM6FcFY38vSicGhjCxAA8DMQumB0s6U3GQhLGPmOpPh6zxxCv7Ly09JkIMOiYNdXLKcnd+A9VZh8dvdjxotNq9m0nD3ee0CSa3jtLkutmGRq7AL2nPHGDE0prZBRcwhlSvZ/A22JrlTBsiowMKvwQr42u5F4WArGs+hPoo8V9KksgAQjDDb8cFeUp3XyRSemVCENY923yeJod9vGitlYoTUaA0Rv0wWpygSdQFzE1NHiPH/fQRokw9dlkrANrKDYAOixivUgDB5g3Sb9yLeSEdOXxgTOKFMD80dYNE/EAQlKzdFETf20WNqPFU552Oobymew==;31:BM56wxUewr31dhcGzJJLQ8IrWDLUCDUAgs+h0uFmMWuoQALbO3LopOtX/jG+4UdJ9r00tk2wHfzruEGxNrdReSfILhbPM7hb244y9aDr8jt7uez6B887iw0lQiU6ZculJSnc1irZHxvMOIkMbH+A1SgVxcvegBGFD/inmMZ2sQDvKLuAXkk/iMiKnfNoMCP7QXN9vS+CyvBUFZPDJZLlJAWhrDnS/Ru2uUOslni5juQ= X-MS-TrafficTypeDiagnostic: CY4PR0701MB3825: X-Microsoft-Exchange-Diagnostics: 1;CY4PR0701MB3825;20:BF0WbVNGT83S4MJ6zGjGZ+EMZob10b+62VmNLfRYotlhV6qIPs3dBLqrjvcEsHO4Vf+Ej9qkoB0s4HLv8ye2YcN06dbmR+NxGXPv5bDjlAYdHSi1AO4/rQknYbyRU7criHhgD3ngrK3YPgUrX3X1sRFWHfiR5QSlYLlU4AMUcU6CpuUB34BCP+GyDv7aMjd8eJi0Nqs6ricl+6t9Thxmy0H7h28rX/jw2f1Liv9pN5zhoC9fZkcpqAd51o80YFK0I8uuJMW30u0N+OwXBQkMqX8M2CPsypyX4YLmFbyLK+9/ShbE5oVZE6YpMQKaC0fkIWwgCoLA3XY4qKEUPl+3C0pp+cRt04NnIKVznyr0t8SDFBm7RvaQCin28jyoH1NkDLDAZ1+cc9t6I4dsCmL3glB215XZ+9npxLmWL+yPULUz9IzD5Pm51ceidhiN/PMx8Mv5T+XafMfXDkROJxSw5kmvEK2Da14N/Kdsg3PiU1CoWoTHDyhb+ZGMEIN9u0524MmVBmCaOryLII4tlIRTRGoQRCWRbCEt+SN14EmpKjnOHXyPLxybEj+D+nUtMDJXZwe1sXPVe1bOcH88smAB1ku1NYyJduaNkgXoSW9Sjvw=;4:DfQbOcjsTM3FWcrylnj3gJVRHN+afW5nRDwQyYe8KgZwD3kx+KhQ1k217udTmAZR2Jslin5KqQImwsdearGNc9sQL+ewzv8/jYCPlnpDEuVLXe5wXFPPMEgc5fg+xsjnWsC22IxRnseL8eOUb9ninaLPFSk8Icg7J/fyLoEWiTTW0yRoxtNJC6B3bSh3QJgpAADiqtzP01Q9/TLMYB4y2R88wAj3T++LKi2v/uKWzZjZ4R6O06vaMC46Zpp8Oq+1M4XtAT3vEqeJ4N4nKqYv/zq10M4SR9rtwBMEfgXnQ/19Up3Mj4z2QQWtkdbIrjQW X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(2401047)(8121501046)(5005006)(10201501046)(3002001)(3231022)(93006095)(6041248)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(6072148)(201708071742011);SRVR:CY4PR0701MB3825;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:CY4PR0701MB3825; X-Forefront-PRVS: 05066DEDBB X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(6069001)(7916004)(346002)(376002)(366004)(199003)(189002)(24454002)(54534003)(2906002)(2870700001)(3846002)(8676002)(4326008)(16526018)(101416001)(83506002)(6486002)(23676004)(5009440100003)(33716001)(6496006)(54906003)(58126008)(81156014)(6116002)(81166006)(1076002)(52116002)(316002)(52146003)(2486003)(105586002)(106356001)(6666003)(54356999)(50986999)(76176999)(6246003)(33646002)(5660300001)(68736007)(97736004)(478600001)(6916009)(189998001)(7736002)(2950100002)(47776003)(42882006)(7416002)(76506005)(53936002)(25786009)(72206003)(305945005)(966005)(39060400002)(229853002)(50466002)(6306002)(8936002)(66066001)(9686003);DIR:OUT;SFP:1101;SCL:1;SRVR:CY4PR0701MB3825;H:localhost;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjA3MDFNQjM4MjU7MjM6RUk4ak1RUzFjeEdTd2d4cHhqMUVKWWpF?= =?utf-8?B?QTZ6SWpSanFobEUwRk1wbmNPMUhQajV4RlBLRWlZL2FFTE5FdlJwbENZdzdx?= =?utf-8?B?L2tRT1IzZjRtRTNmL09jNGQzQWNQaWhFYk5NUEVFbHBFZUJQdE80QVF4SnNG?= =?utf-8?B?R1RYNUF5b0F4ZWpkeFhCQ2lxT0tvZ1huOEhHL3lFKzl6YS9Rb2s3c1MrUW5C?= =?utf-8?B?Q0FJaHBHcy8rckkzYTdWWFRqQjRCcFVnRklBRElhVnNQVU15cEY1WnVGMXcx?= =?utf-8?B?T1c0ZU9iLzNGMEo5Wi9LWS9YZ0pCYmFOQmNSOWZSZ1dLYUVZY3MrVDNPYkVL?= =?utf-8?B?eXZNZGQreFd5dThtdmFMN3RZdE1UaEtBbW82TGR4SW1EQjRTYkhuUWtCNnp3?= =?utf-8?B?YWd2SHJQN3Zjam9QTXpZdHVQYU5sdDVDNWxMK252c2Rpa00wYzNwVGFkUE9m?= =?utf-8?B?U0pBUW5QUHByd1BjQmlXQTF2Wjh1djhwcTduWXFDN0NtaGl3VDlOdVh5eFFn?= =?utf-8?B?dktaMmFQbVBuQ3hCYVA2SGE0eHJUOXdjSm13WE1oRG1FemxUcU1hSnN0RmEz?= =?utf-8?B?bVg2TWtPcDRNUUhUU3lKTnhTWGJuMUlLZmU2MmxhdXQwbXg5QVVqVVE4NE9R?= =?utf-8?B?RVk5SzJjdFdLQU9SSmZZbFFNMm12dUN0amR0SmtZdi9sclF6ZDZJbE40ZGYr?= =?utf-8?B?RkpYT2l3TzhiaWJxaWd3ZDI4ZktJdTR1UjZneHpIekIwWDl3S3ozTVdjQWxa?= =?utf-8?B?ZytEWC9mdG51Qkk1VHFvZ0lHdDNidXEvRlRQQjgxaVdYV0RQSUc1MExQK3JO?= =?utf-8?B?a05vM1dRRnBEMCtIczMxaTBMYlhqaC9DN2Q4YXRnTllZbW5yWlJoTXVTSS9O?= =?utf-8?B?ZWp5YTVLeCtQVUtmc2hlUHRzU2ZFNFgxU21CYVFWdXZKTkg0QXdYTm9qTWdM?= =?utf-8?B?alc2SldibkZjSmMrejc2akxiVHV4aWNsRDRNNDh2djBJNTF1aVhmQVFjQVNq?= =?utf-8?B?cXdIZTVDK1NUSm1oekJmK0IweTFsNUQ3Nk93NDhJZkI0YndVcjdGTjJGNUlK?= =?utf-8?B?THdFL095Y2xaOHovanVBbmd1QnZDaGNkZmpsRGZNd2tWbkNmU1ZIUDVsQmwr?= =?utf-8?B?M0FrQjQ5aCt1UW5VS0FXUFdqM1llWGlLVzRwZW04Q0gvZHgrbm92akxneXJG?= =?utf-8?B?Nmdjdkg0RUhjVTgxTTk3dVZPVk5qaEl0d3JSMTNQbG5JUjRtNjBGZ1BzYmZH?= =?utf-8?B?ZERmdERPRFQ3MTlBQ3pkQVdVcVZUK1JCUFA3RkFuT0ZDOXAvVUhrenhGVjRR?= =?utf-8?B?VS9vWkZ5MFJqR0xJb3lXbSswbVQ2YWkweE1SbGgvOTlIaHM3bkh0aTlZODNa?= =?utf-8?B?SW9EYnRiWmVtY0FOTk5lOFVoU2tpNlpzY2tOSFU1eVNIb0pMWHNUd1VkZmFk?= =?utf-8?B?Y0lheFhmNzEzZVhDZ2J4VnhKL2F0SVZvMWlPdFhadFVTa0VrVXhwak9rUEhC?= =?utf-8?B?bXByQzhhNlRXdjZsSWVvcmxyc0owazViYmF0NGk1alZJVU5Dbk5DU3ZSNjdP?= =?utf-8?B?M2wrV0ZiY0wzaU43Y0IrSHo4MXdDY21qZXJwVE5iZEVsQVkyNFBDa3I5clFa?= =?utf-8?B?Y0NLcWtCQ1BpU3FiNlVvdXRPQ04xbGdiWFZMcjd4V2QyTVBhY29zNThBMmJX?= =?utf-8?B?ZVJ6NGE0T3VrWVllTDRqa0t0Q1hUYWNmODJsekJxbVJZSTJBWXN4NnltZVhH?= =?utf-8?B?VnR3M3lVVWdpeEdoeXBpclRYQS85djIwTytNOUVEKzBNSnFWQmN4c1ZWRWtU?= =?utf-8?B?VEdaYnNLd2pTclE1VWR3TGFQQVlkSUhOUUhRaFk1MXphMnZjRHhxTk1GTVBJ?= =?utf-8?B?am80ZkdnMENXNTQrZE5nQjJGR0VjSEVOOG1YdmtoZGdOWjFMNFdwYW9CSkNY?= =?utf-8?B?V2hNSThyVTN1T2dubW4rdWpORW85K0lkb0c0Z3N5c3pDU203dzZQcnkrSFgz?= =?utf-8?B?NDluZmFqTGMrUlMwNjJJck5rNE81RmszYm9iU3pRPT0=?= X-Microsoft-Exchange-Diagnostics: 1;CY4PR0701MB3825;6:h9cSr2IfiPdFYaCB5CNZzNRZR3Va9faCM/mjZ/oZbrnb8Oe0LEcNXaM3DckV1pWAjzVJiZtxXuQ2A1CAWvZx+vPW1QpJ43TsbJvewm4Sms8WOzsFvPUw1iLr/SwrmQ2B3DTrQ8rWwwf9ZaNIxl2f4c1qfMAn9BlXk0nGfnT2ba1SCSlQq1P8SlCpNzp9L0HMewLFStC2NSLMUmFdHdbGzWoMNd81YF66v06H5nTKZQK32YbvfCpwbcxWcfqWPVKyWYHDIV3I+VrTw0f+j+vNGMuSYIDjiEIVPrroZrO0IuMpAyyC0z6voCuVosBxLcAsTz+ZP/8dUK1DEirAhGWgPJ1bMIOb7tqwDkflniE9Oc4=;5:TK7fG7R6DMoaZ2LQuuWTvlEFkZMgVHj1r5QmcEmQGSkY0m0YjAGu4i47uU7VE5KQXdD74pNFm+amr4Vv03Fw/0qhNXmXZ6pJiGtGh8golHKiycAnPYhN6P/YtvV0ZtKEH2lpXoUDxIXVEcXQmtMaxRbqY8M02uPTeH/bGneZ7KY=;24:sgsAadC7Qv+6FvMYzTOUlQK+yTEz6cDLTaEw1GMCKAfBUmC7dJ4iMpsmYGILQ4LPLPKkUJHm0BbB/sQDo8JLDnW7TAWu06vv7JWBQzUaxpY=;7:zmCqw/TjQp9MamjigobhkJkvhnEW5VRuOAYSbAdWPzdPs30jojLPjfVkdra/NxFVIIPox6SEvpob8fBmKs7iQdUwV9VU7xKSC8N9A69LmjICoYx4cg8JMsCtuUYu7WbIiZPKKN5itzD1G29Q5B8uzT8vOwKYRKhhBw/o2VjTfWy3ys3mo+IcrMW+/0lbbpEvUresLwKc6EiHVpB6y53Gbc5E/OIjpY6kshAZHTAhddkZ4E7YEVvwNITvmWs7ZUF8 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Nov 2017 09:32:45.1616 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cd6cca02-a43a-41ad-86fa-08d5370c26eb X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR0701MB3825 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Nov 28, 2017 at 06:33:55PM +0000, Will Deacon wrote: > On Sat, Nov 25, 2017 at 12:41:27PM +0300, Yury Norov wrote: > > It was discovered during LTO-enabled compilation with gcc/ld.bfd. > > What was discovered? Could you provide a bit more information in the > changelog, please? I'm happy to take this as a fix if it's actually fixing > something. Yes it does. There's inconsistency in variable declaration and section type. GCC doesn't throw error for usual build, but if LTO enabled, build becomes broken, like this: mm/percpu.c:2168:20: error: pcpu_fc_names causes a section type conflict with dt_supported_cpu_ops const char * const pcpu_fc_names[PCPU_FC_NR] __initconst = { ^ arch/arm64/kernel/cpu_ops.c:34:37: note: ‘dt_supported_cpu_ops’ was declared here static const struct cpu_operations *dt_supported_cpu_ops[] __initconst = { And so on. Let me know if you need full error log, then I'll resend the patch with it. You can also try it yourself, the very dirty and unfinished branch is here: https://github.com/norov/linux/tree/lto Yury From mboxrd@z Thu Jan 1 00:00:00 1970 From: ynorov@caviumnetworks.com (Yury Norov) Date: Wed, 29 Nov 2017 12:32:25 +0300 Subject: [PATCH] arm64: fix missing 'const' qualifiers In-Reply-To: <20171128183355.GO9266@arm.com> References: <20171125094127.7536-1-ynorov@caviumnetworks.com> <20171128183355.GO9266@arm.com> Message-ID: <20171129093225.tq2cbg6l6yupkeit@yury-thinkpad> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Tue, Nov 28, 2017 at 06:33:55PM +0000, Will Deacon wrote: > On Sat, Nov 25, 2017 at 12:41:27PM +0300, Yury Norov wrote: > > It was discovered during LTO-enabled compilation with gcc/ld.bfd. > > What was discovered? Could you provide a bit more information in the > changelog, please? I'm happy to take this as a fix if it's actually fixing > something. Yes it does. There's inconsistency in variable declaration and section type. GCC doesn't throw error for usual build, but if LTO enabled, build becomes broken, like this: mm/percpu.c:2168:20: error: pcpu_fc_names causes a section type conflict with dt_supported_cpu_ops const char * const pcpu_fc_names[PCPU_FC_NR] __initconst = { ^ arch/arm64/kernel/cpu_ops.c:34:37: note: ?dt_supported_cpu_ops? was declared here static const struct cpu_operations *dt_supported_cpu_ops[] __initconst = { And so on. Let me know if you need full error log, then I'll resend the patch with it. You can also try it yourself, the very dirty and unfinished branch is here: https://github.com/norov/linux/tree/lto Yury