From: Vincent Guffens <guffens@auto.ucl.ac.be>
To: user-mode-linux-devel@lists.sourceforge.net
Subject: [uml-devel] making uml work with smp
Date: Thu, 10 Jun 2004 13:21:31 +0200 [thread overview]
Message-ID: <40C8443B.8030809@auto.ucl.ac.be> (raw)
Hi,
I've tried UML+SMP with linux-2.4.24-um1. According to the project list
on the uml site, this feature is ready but needs to be debugged.
I report here my attempt to start UML with smp with no success. However,
as the code is already there, it would be very nice to have it work.
Would it be possible to have useful pointers toward architecture details
that would help in understanding how to make it work. Useful techniques
on how to debug uml+smp would also be very interesting as it looks like
it is not going to be the trivial task of the day ...
The only changes that have to be made to compile with SMP is
*add the folowing to arch/um/config.in
define_bool CONFIG_SMP $CONFIG_UML_SMP
+int 'Number of CPUs' CONFIG_NR_CPUS 1
*change this line in arch/um/kernel/um_arch.c
-int ncpus = 1;
+int ncpus = 4;
*turn it on in the kernel config
When booting the machine, you can see the processors starting :
./linux-smp ubd0=cow0 umid=test devfs=nomount mode=tt
[...]
Starting up other processors:
#1 - idle thread pid = 18502.. online
#2 - idle thread pid = 18504.. online
#3 - idle thread pid = 18506.. online
All CPUs are go!
Waiting on wait_init_idle (map = 0xe)
All processors have done init_idle
[..]
As expected problems occur when booting the UML machine,
1) a crash :
INIT: version 2.84 booting
Kernel panic: Kernel mode fault at addr 0x115, ip 0xa00c9066
<6>Stopping all CPUs...CPU#0 stopping
but gdb gives the following:
Couldn't get registers: No such process.
(gdb) bt
Couldn't get registers: No such process.
but with only one processor, you can have gdb to tell you that the
problem is in tty_open
2) sometimes there is a hang with the following backtrace
[...]
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
[hang here]
#0 0xa0181eb1 in nanosleep ()
#1 0xa00bc516 in idle_sleep (secs=10) at time.c:160
#2 0xa00b8161 in cpu_idle () at process_kern.c:210
#3 0xa000d542 in rest_init () at init/main.c:346
#4 0xa00025f9 in start_kernel () at init/main.c:440
#5 0xa00bf1ed in start_kernel_proc (unused=0x0) at process_kern.c:437
#6 0xa00c030f in signal_tramp (arg=0xa00bf1a4) at tracer.c:120
--
Vincent Guffens
PhD Student UCL/CESAME
tel: +32 10 47 80 30
Value your freedom, or you will lose it, teaches history.
"Don't bother us with politics," respond those who don't want to learn.
-- Richard M. Stallman
-------------------------------------------------------
This SF.Net email is sponsored by: GNOME Foundation
Hackers Unite! GUADEC: The world's #1 Open Source Desktop Event.
GNOME Users and Developers European Conference, 28-30th June in Norway
http://2004/guadec.org
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
next reply other threads:[~2004-06-10 9:43 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-10 11:21 Vincent Guffens [this message]
2004-06-14 18:09 ` [uml-devel] making uml work with smp BlaisorBlade
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=40C8443B.8030809@auto.ucl.ac.be \
--to=guffens@auto.ucl.ac.be \
--cc=user-mode-linux-devel@lists.sourceforge.net \
/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