From: Atish Patra <atish.patra@wdc.com>
To: linux-riscv@lists.infradead.org
Cc: Atish Patra <atish.patra@wdc.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Andreas Schwab <schwab@suse.de>, Anup Patel <anup@brainfault.org>,
Dmitriy Cherkasov <dmitriy@oss-tech.org>,
Johan Hovold <johan@kernel.org>,
linux-kernel@vger.kernel.org, Palmer Dabbelt <palmer@sifive.com>,
Paul Walmsley <paul.walmsley@sifive.com>,
Damien Le Moal <Damien.LeMoal@wdc.com>,
Anup Patel <Anup.Patel@wdc.com>
Subject: [v1 PATCH 3/4] RISC-V: Implement nosmp commandline option.
Date: Tue, 19 Mar 2019 15:20:27 -0700 [thread overview]
Message-ID: <20190319222028.4293-3-atish.patra@wdc.com> (raw)
In-Reply-To: <20190319222028.4293-1-atish.patra@wdc.com>
nosmp command line option sets max_cpus to zero. No secondary harts
will boot if this is enabled. But present cpu mask will still point to
all possible masks.
Fix present cpu mask for nosmp usecase.
Signed-off-by: Atish Patra <atish.patra@wdc.com>
---
arch/riscv/kernel/smpboot.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/arch/riscv/kernel/smpboot.c b/arch/riscv/kernel/smpboot.c
index df353199..609475c5 100644
--- a/arch/riscv/kernel/smpboot.c
+++ b/arch/riscv/kernel/smpboot.c
@@ -49,6 +49,17 @@ void __init smp_prepare_boot_cpu(void)
void __init smp_prepare_cpus(unsigned int max_cpus)
{
+ int cpuid;
+
+ /* This covers non-smp usecase mandated by "nosmp" option */
+ if (max_cpus == 0)
+ return;
+
+ for_each_possible_cpu(cpuid) {
+ if (cpuid == smp_processor_id())
+ continue;
+ set_cpu_present(cpuid, true);
+ }
}
void __init setup_smp(void)
@@ -76,7 +87,6 @@ void __init setup_smp(void)
cpuid_to_hartid_map(cpuid) = hart;
set_cpu_possible(cpuid, true);
- set_cpu_present(cpuid, true);
cpuid++;
}
--
2.21.0
next prev parent reply other threads:[~2019-03-19 22:20 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-19 22:20 [v1 PATCH 1/4] RISC-V: Add RISC-V specific arch_match_cpu_phys_id Atish Patra
2019-03-19 22:20 ` [v1 PATCH 2/4] RISC-V: Fix of_get_cpu_node usage Atish Patra
2019-03-19 22:20 ` Atish Patra [this message]
2019-03-19 22:20 ` [v1 PATCH 4/4] RISC-V: Support nr_cpus command line option Atish Patra
2019-03-19 23:56 ` Damien Le Moal
2019-03-19 23:58 ` Damien Le Moal
2019-03-20 1:29 ` Atish Patra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190319222028.4293-3-atish.patra@wdc.com \
--to=atish.patra@wdc.com \
--cc=Anup.Patel@wdc.com \
--cc=Damien.LeMoal@wdc.com \
--cc=anup@brainfault.org \
--cc=aou@eecs.berkeley.edu \
--cc=dmitriy@oss-tech.org \
--cc=johan@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@sifive.com \
--cc=paul.walmsley@sifive.com \
--cc=schwab@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).