All of lore.kernel.org
 help / color / mirror / Atom feed
From: Blaisorblade <blaisorblade_spam@yahoo.it>
To: user-mode-linux-devel@lists.sourceforge.net,
	Jeff Dike <jdike@addtoit.com>
Cc: "Roland Kaeser" <roli8200@yahoo.de>,
	"Nuno Silva" <nuno.silva@vgertech.com>,
	"Antoine Martin" <antoine@nagafix.co.uk>,
	"Sven Köhler" <skoehler@upb.de>,
	"Dennis Muhlestein" <devel@muhlesteins.com>
Subject: Stop at startup on 2.6 NPTL hosts (was: Re: [uml-devel] UML Kernel 2.6.7 Nothing happens)
Date: Tue, 2 Nov 2004 19:52:08 +0100	[thread overview]
Message-ID: <200411021952.09095.blaisorblade_spam@yahoo.it> (raw)
In-Reply-To: <20041029092641.8558.qmail@web26102.mail.ukl.yahoo.com>

On Friday 29 October 2004 11:26, Roland Kaeser wrote:
> Hi all

> I'm a newby to UML but an very oldy to linux. I want to try to setup up
> several uml jailed services on one physical machine.

> I'm using Kernel 2.6.7 with Host SKS patch and also Kernel 2.6.7 for the
> uml instances. I'm calling the uml kernel but then nothing happens:

> root@roland linux]# /install/uml/kernel/linux
> initrd=/install/uml/files/initrd.img lang= devfs=nomount ramdisk_size=10240
> mem=128M eth0=tuntap,,,195.49.21.28 ubd0=/install/uml/instances/fc2install
> fakehd con=xterm ubd=0
> Checking for the skas3 patch in the host...found
> Checking for /proc/mm...found

> [1]+  Stopped                 /install/uml/kernel/linux
> initrd=/install/uml/files/initrd.img lang= devfs=nomount ramdisk_size=10240
> mem=128M eth0=tuntap,,,195.49.21.28 ubd0=/install/uml/instances/fc2install
> fakehd con=xterm ubd=0

> I've made the nodes in /dev/ compiled and installed the uml utilities. I
> really have no idea whats wrong.
> Please help

I'm CC:ing everybody who I found reported this problem. And with this problem, 
I mean this:

$ ./vmlinux ubd0=~/Uml/root_fs_toms1.7.205
Checking for the skas3 patch in the host...found
Checking for /proc/mm...found

[1]+  Stopped                 ./vmlinux ubd0=~/Uml/root_fs_toms1.7.205

I'm experiencing this problem, too, so I'm trying to fix it. I'm getting some 
success, but I'll have to fix a lot of places before UML start working again.

I have found out what happens. I simply ran:
gdb ./vmlinux
r
bt
and went watching the source in the backtrace point.

This happens if and only if UML is using NPTL thread libraries. This, in turn, 
happens in normal config with a NPTL-enabled glibc on the host, or in the 
special situation of CONFIG_MODE_TT and CONFIG_STATIC_LINK off. This is why 
it's not normally noticed and it's not yet debugged (it was reported the 1st 
time by Nuno Silva around 2.6.0).

Usually compiling with CONFIG_MODE_TT enabled appears to workaround the 
problem on most distros. The exception are Gentoo and recent LinuxFromScratch 
systems, where it would cause the compilation to fail.

It is one UML bug I've just identified and that I'm trying to fix. This is the 
faulty code, from arch/um/kernel/skas/process.c:

static int userspace_tramp(void *arg)
{
        init_new_thread_signals(0);
        enable_timer();
        ptrace(PTRACE_TRACEME, 0, 0, 0);
        tkill(gettid(), SIGSTOP);
        os_stop_process(os_getpid());
        return(0);
}

This is executed by a clone() child. What happens is that, with NPTL, both the 
father and the son have the same pid, so the SIGSTOP is routed to the wrong 
thread. However, this is not expected: having the same pid should be reserved 
to when clone is called with CLONE_THREAD in the flags. I've verified that 
this is not happening in this case, even with strace (to make sure glibc is 
not playing any dirty tricks). But for some reasons, the kernel is behaving 
as if this happened.

What makes me suspicious is that the NPTL library calls set_thread_area(). 
Even by checking the source, it should not interfere. But something wrong may 
be happening.

Best regards.
-- 
Paolo Giarrusso, aka Blaisorblade
Linux registered user n. 292729



-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

  reply	other threads:[~2004-11-02 22:20 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-29  9:26 [uml-devel] UML Kernel 2.6.7 Nothing happens Roland Kaeser
2004-11-02 18:52 ` Blaisorblade [this message]
2004-11-02 23:43   ` [uml-devel] Re: Stop at startup on 2.6 NPTL hosts Sven Köhler
2004-11-03  3:04   ` Nuno Silva
2004-11-03  8:32     ` Gerd Knorr
2004-11-03 15:59       ` Blaisorblade
2004-11-03 20:10         ` Gerd Knorr
2004-11-03 22:17           ` Blaisorblade
2004-11-03 22:17             ` Blaisorblade
2004-11-04  8:40       ` Nuno Silva
2004-11-09 16:42   ` Bodo Stroesser
2004-11-09 17:29     ` Adam Heath
2004-11-09 17:32       ` Bodo Stroesser
2004-11-09 18:23         ` Bodo Stroesser
2004-11-09 19:11     ` Blaisorblade
2004-11-10  8:36       ` stian
2004-11-10  9:07         ` Geert Uytterhoeven
2004-11-10 12:15           ` Bodo Stroesser
2004-11-10 12:47             ` Geert Uytterhoeven
2004-11-10 14:32               ` Blaisorblade
2004-11-10 14:44             ` Sven Köhler
2004-11-10 21:19           ` Henrik Nordstrom
2004-11-15 17:17             ` Blaisorblade
2004-11-10 17:16         ` 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=200411021952.09095.blaisorblade_spam@yahoo.it \
    --to=blaisorblade_spam@yahoo.it \
    --cc=antoine@nagafix.co.uk \
    --cc=devel@muhlesteins.com \
    --cc=jdike@addtoit.com \
    --cc=nuno.silva@vgertech.com \
    --cc=roli8200@yahoo.de \
    --cc=skoehler@upb.de \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.