From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933907AbbLPBOM (ORCPT ); Tue, 15 Dec 2015 20:14:12 -0500 Received: from mail-db3on0086.outbound.protection.outlook.com ([157.55.234.86]:28192 "EHLO emea01-db3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752985AbbLPBOL (ORCPT ); Tue, 15 Dec 2015 20:14:11 -0500 Authentication-Results: spf=fail (sender IP is 212.179.42.66) smtp.mailfrom=ezchip.com; linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=ezchip.com; From: Noam Camus To: CC: , , , Noam Camus Subject: [PATCH v4 09/19] ARC: Mark secondary cpu online only after all HW setup is done Date: Wed, 16 Dec 2015 03:10:28 +0200 Message-ID: <1450228238-4499-10-git-send-email-noamc@ezchip.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1450228238-4499-1-git-send-email-noamc@ezchip.com> References: <1450228238-4499-1-git-send-email-noamc@ezchip.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-Product-Ver: SMEX-11.0.0.1191-8.000.1202-22004.003 X-TM-AS-Result: No--4.311900-8.000000-31 X-TM-AS-User-Approved-Sender: No X-TM-AS-User-Blocked-Sender: No X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;DB3FFO11FD008;1:lJqP7HSu7Gx0FXtW7zzP7HyKG4WU+UZJf1KjJw+UnSLkuYUQr2QrUvTyNCQpGODOZ58WGkjaQ0mWn1b4XWSWCc19Anr1Ul0YKyhEu2/8U0bvbd1U0O6Pa+r1UqEi4qcWhry5WAnXmEErQ4pSPZBnbrslXfX7nNN0aG9v4yjrWj/3JQxBYb04qSZne7+MhEjCq33r3HGWT0rPMizxagXpZHbxk/TEwSBd9BQ9mvkm0X+veVVBKp/4QDNAG1+BTi+HkL8Mfusp8nRykpkv87t4JWEECsTsB8aR5oi6ycXS7wcjGlKmnrYrCPq0cs95mHyPLtbOu5TqIGztEbL6iPhzUUutypq62EST1FY8ZFOf4Q99vDSGLpw7A3vqJ8pJUa4cOqlDhzrZlvoDNwRfPgxH1g== X-Forefront-Antispam-Report: CIP:212.179.42.66;CTRY:IL;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(575784001)(5001970100001)(107886002)(50466002)(49486002)(85426001)(87936001)(36756003)(11100500001)(2950100001)(77096005)(48376002)(6806005)(4001430100002)(5008740100001)(189998001)(86362001)(105606002)(586003)(104016004)(1096002)(5003940100001)(47776003)(33646002)(110136002)(19580395003)(2351001)(92566002)(50226001)(76176999)(50986999)(106466001)(19580405001)(229853001)(1220700001);DIR:OUT;SFP:1101;SCL:1;SRVR:HE1PR02MB1212;H:ezex10.ezchip.com;FPR:;SPF:Fail;PTR:ezmail.ezchip.com;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;HE1PR02MB1212;2:680ihnIRsZtVEBPev7btY9qaYRHbfSbZ+oEe+BURuJ062u6CFwpTLx+EdEF9kgrxePmH9Sp5G1p5Okwxv2X+m+h0+3sKqkWO0qC4qr8P3OBmpr5fCFhrosSqMDtSFvo4frSTBo5oATk40F7syVgddw==;3:nnC3VQQVGcfbWifYjy+LQv4KQgFO5L6ZBXshT3fm6oLM0lZ5jl86yCODAV4JR4Fsn99dG7gKwvnqHZokJVe9EZ/2//CdYvaN1sXb0eQX9fJ/hkHql49/L1EGCoXtuEzAlnr9OasC0btidSuC8kpiceWiJOaMPlFTbA5uyn1+gwAR3sMsmlC7NJjQSU53ua6p3AFfDh8MCZ0jDqh3hs0/1a7nPiZLyJW6BoxcqC7q8S8=;25:40i3qlDDRHH8HHCZMLx2NGn0ZzQzngVqCaZ4HJZemkR7rm0eBJ3rEI1B3tDZXJO1Oz+NHdfy9ErlQB8feh2SaYzVFxeEnnI3F/UKOxfXeR6REJFSWR9CDIVtKfITZgJKtPnC47u4ffrze0pdiiOW8ozR/2ZzVniId16kXU26q8SyB02FkaTHQuh0X471LK8mMY6RH9L4iNk6Ln5Nkwmp0pLOZWM8ooM0Kc8pSD89W2A+Dz7W39o7KVHCMi/ZkEqG8yEp42EtDZI0je6rmBodjg==;20:dEbjgmVErW2ILdA9jZ5g0PEpniMIi7s5mnUXoMX2Iwqh3imjjn1Ple0w7F+mNo5uGujbg1VTQBXji0+B3QS+DiIdEvwPwYaL7BdQIatgmq8pEe89iqWfIsnGaoXnGq6pCStR5npvlptOPolJiUPJhg0QP35E/RzfuWgdcW5GYYs= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HE1PR02MB1212; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(121898900299872); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(520078)(5005006)(8121501046)(3002001)(10201501046);SRVR:HE1PR02MB1212;BCL:0;PCL:0;RULEID:;SRVR:HE1PR02MB1212; X-Microsoft-Exchange-Diagnostics: 1;HE1PR02MB1212;4:dqIDAOn2SBLxCyMtZdWLvVt1Wmhtbst02VtUD0Y/vQSrxi4b+gaxH5M0rMndSzWfybOMz/CUSu15Cc84mhs/6rOPxFvsZwZKrf6G1Hupq1G4NIbYRUWZQHFHf5ZHi7s8HbqpVLh5WbwF/gUlq0LC5iVs5Q7pFenMC3cd+ASEn1h+IeW0FhZrXnVaURl5hgy6eCfm/sGMZZ2RYj3POjg64y61f0ZtsYO1a51FWSZzlw9aBakiWg3KMulxygFicLHkVznwOPnczJnJ2K74eDxKMto5YdLoTGy1CriFXnOK0DRha7px7QrX8spXhGZhzKPTOBfpbuyIC6p83XE3aISMavwDSEo8NeCDJw7V+RyEU2geIoFqKrg3XyNdlVnjBe4M2RHlBB5BHhUX5TKlGoiwKgG7uYubwBBqa8EG3MnrwOluTVhzGlMTyysxta0UxhyQ X-Forefront-PRVS: 0792DBEAD0 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;HE1PR02MB1212;23:3TEQgg78b4UvQNfIxCBmBfNLv4ecBxzS6Nqvipvba?= =?us-ascii?Q?wpPp8Fgg9HUNY3hTrFlMxfSp9xpe4z2tOl+3LRVUc3i1nCWiBPbLdcoInk46?= =?us-ascii?Q?rCTeB4l5Izk3fnW/p8idAXUU+mXp8tUQpXp4GQNhoV4pjZOcUuGDvHnH36Nk?= =?us-ascii?Q?OUNOpL+pqxpseRfU9vzRZKCRYV1J1wMbpgZ3wYXSz5TADXOHoLQNvl1WKAF/?= =?us-ascii?Q?TGWI17Xd3LizF7Drh5MBNA7JpI6Fflgv3XCHqpVdqq2iFevDoQedSw2KM9SC?= =?us-ascii?Q?DTl5S/Ikw6h+1FQBntEwell0cOkWZnBXc3/uHiSHZJYSr6YpA4vFSk3IC1k8?= =?us-ascii?Q?WZrA/J8yKPKwuW/eaBJGKfsTosfKYn2vzSCkVWccLjyq72P7OLLCgT4kCEus?= =?us-ascii?Q?8LGte15JBHWx+M9yvNty6Z0dYOOB+6UI2yB0uDcpfn/2xM8QUFrOCzkBYXMi?= =?us-ascii?Q?/gGXhBDdxIbUUDTmd7KIw7DxtxIxK3OulGl8ct7S/GRMhUXuqXM2Um4vA2cl?= =?us-ascii?Q?BFq9DlJxz5n2LbWhb3fYpS8ANKP3PPLrgYcXFNtJYIF1oTjusMTjZK61eNSJ?= =?us-ascii?Q?uyUNxg1JbKWX+OEdTvl5PRxDiN7De4HZbjQq/C3aiPzHJREifGtqK720eVe3?= =?us-ascii?Q?VzTz/15Na5OYZl6jn4ORbTrA+PBSOszcZEyMovzspZH55Q9ylRg3HXdJEj0y?= =?us-ascii?Q?eTYleIzqBP7SBymoP+lUZ6tw8L9DgFd5aQebE3unah+Hfi/9dB/DLghDFXDQ?= =?us-ascii?Q?YhH7PfHb8AuX0n0fKMVdC2TMhkzWdLFkXGPupYNkUdM1SibHA+P1BwaBW87r?= =?us-ascii?Q?q7VmSLDWID0EXROsoJcm1MlmZQVS4HYDZBoqUjZlv9i8IirDxxSorel4QkQu?= =?us-ascii?Q?VYxb79dPgIxG+/Yhy8gZML9CWMQvyQwR7bG8cRwYkhUwqP5erdU00mRrXPLG?= =?us-ascii?Q?QdyOfWJMExV8I2qsSqUHOdWw/SDczi0LLfrpCLvWtt/FMp88S6pqP7pvauaZ?= =?us-ascii?Q?6iGSDBYbPio5VqIiZlnIjbM5fzRSxscIDPBeO/WexT45C1a0oT5Ks7UXtuaW?= =?us-ascii?Q?v78W9pBEBXvcZnYPCncWPCDd9CgpbRio64HYrHofuoKnkd+pOC706xhxQKoj?= =?us-ascii?Q?dbLctD6R5Q=3D?= X-Microsoft-Exchange-Diagnostics: 1;HE1PR02MB1212;5:DsxvY5dk/2CTjii698hKA19R6LjFubU+w1f3k3NarEAWUp1ZylH2n13aaAEY8+EMP6av7vFMJsEgOVn3ga6pdTfuMm9NmW7hcMShdDbV7LZCSFo5ozvjkGTKiCZKsT1y2JVjCNmWLFcXo+a4ZDbBtA==;24:7g9QV8UCyWXZ/Sxe0rFxgjvoQF0AXWijLOBzC6/sk0Ii7n/SPZ6gHsbfzVBlIYuPxM/Q6qM2A/vZt69FxYuwzzro8ZVUHPaz9giPtbiVboo= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: ezchip.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Dec 2015 01:14:06.8458 (UTC) X-MS-Exchange-CrossTenant-Id: 0fc16e0a-3cd3-4092-8b2f-0a42cff122c3 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=0fc16e0a-3cd3-4092-8b2f-0a42cff122c3;Ip=[212.179.42.66];Helo=[ezex10.ezchip.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR02MB1212 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Noam Camus In SMP setup, master loops for each_present_cpu calling cpu_up(). For ARC it returns as soon as new cpu's status becomes online, However secondary may still do HW initializing, machine or platform hook level. So turn secondary online only after all HW setup is done. Signed-off-by: Noam Camus Acked-by: Vineet Gupta --- arch/arc/kernel/smp.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arc/kernel/smp.c b/arch/arc/kernel/smp.c index 0b061a4..bc0e4f6 100644 --- a/arch/arc/kernel/smp.c +++ b/arch/arc/kernel/smp.c @@ -126,11 +126,6 @@ void start_kernel_secondary(void) current->active_mm = mm; cpumask_set_cpu(cpu, mm_cpumask(mm)); - notify_cpu_starting(cpu); - set_cpu_online(cpu, true); - - pr_info("## CPU%u LIVE ##: Executing Code...\n", cpu); - /* Some SMP H/w setup - for each cpu */ if (plat_smp_ops.init_per_cpu) plat_smp_ops.init_per_cpu(cpu); @@ -138,6 +133,11 @@ void start_kernel_secondary(void) if (machine_desc->init_cpu_smp) machine_desc->init_cpu_smp(cpu); + notify_cpu_starting(cpu); + set_cpu_online(cpu, true); + + pr_info("## CPU%u LIVE ##: Executing Code...\n", cpu); + arc_local_timer_setup(); local_irq_enable(); -- 1.7.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: noamc@ezchip.com (Noam Camus) Date: Wed, 16 Dec 2015 03:10:28 +0200 Subject: [PATCH v4 09/19] ARC: Mark secondary cpu online only after all HW setup is done In-Reply-To: <1450228238-4499-1-git-send-email-noamc@ezchip.com> References: <1450228238-4499-1-git-send-email-noamc@ezchip.com> List-ID: Message-ID: <1450228238-4499-10-git-send-email-noamc@ezchip.com> To: linux-snps-arc@lists.infradead.org From: Noam Camus In SMP setup, master loops for each_present_cpu calling cpu_up(). For ARC it returns as soon as new cpu's status becomes online, However secondary may still do HW initializing, machine or platform hook level. So turn secondary online only after all HW setup is done. Signed-off-by: Noam Camus Acked-by: Vineet Gupta --- arch/arc/kernel/smp.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arc/kernel/smp.c b/arch/arc/kernel/smp.c index 0b061a4..bc0e4f6 100644 --- a/arch/arc/kernel/smp.c +++ b/arch/arc/kernel/smp.c @@ -126,11 +126,6 @@ void start_kernel_secondary(void) current->active_mm = mm; cpumask_set_cpu(cpu, mm_cpumask(mm)); - notify_cpu_starting(cpu); - set_cpu_online(cpu, true); - - pr_info("## CPU%u LIVE ##: Executing Code...\n", cpu); - /* Some SMP H/w setup - for each cpu */ if (plat_smp_ops.init_per_cpu) plat_smp_ops.init_per_cpu(cpu); @@ -138,6 +133,11 @@ void start_kernel_secondary(void) if (machine_desc->init_cpu_smp) machine_desc->init_cpu_smp(cpu); + notify_cpu_starting(cpu); + set_cpu_online(cpu, true); + + pr_info("## CPU%u LIVE ##: Executing Code...\n", cpu); + arc_local_timer_setup(); local_irq_enable(); -- 1.7.1