-----BEGIN PGP SIGNED MESSAGE-----
>>>>> "Rob" == Rob Landley <[EMAIL PROTECTED]> writes:
Rob> My uclibc system works just fine as long as I chroot into it or
Rob> boot into it with a normal (2.6) linux kernel. It can even
Rob> recompile itself, entirely from source, under itself.
Rob> Using user mode linux with it is what causes problems. If I
Rob> run user mode linux with that exact same directory a hostfs
Rob> root partition, it either hangs or malfunctions in numerous
Rob> different ways, some of which seem to be race conditions and
Rob> others are reproducible bad behavior which I have never once
Rob> seen those exact same binaries exhibit when I chroot from the
Rob> host kernel.
Does it work with
./linux root=... init=/bin/sh
??
Rob> couldn't figure out any way to make it start with a readable
Rob> hostfs by default, but "mount -o remount,rw / /" once it was up
Rob> seemed to do the trick, and I can put that in an init script no
You want to add the 'rw' flag to your boot line.
This is what "make uml" on the openswan tree creates:
/mara4/openswan-2/asyncklips/UMLPOOL/east/linux root=/dev/root
rootfstype=hostfs rootflags=/mara4/openswan-2/asyncklips/UMLPOOL/east/root rw
umid=east $net $UML_DEBUG_OPT $UML_east_OPT $*
Rob> But when trying to compile "hello world", gcc died saying it
Rob> couldn't find ld. This exact filesystem worked fine chrooting
Rob> into it on the host kernel, a knoppix system running 2.6.7.
>> Well, was ld actually there?
Rob> Did you read second sentence in the bit you just quoted? How,
Rob> exactly, could I chroot into there and compile stuff if ld
Rob> isn't there?
Yes, but you are missing my point.
It *COULD* be that due to a bug in hostfs that ld wasn't where it was
supposed to be.
Rob> I did, of course, check and make sure that ls and cat and such
Rob> found ld in the UML environment, which they did. (The error
Rob> message is actually collect2 can't find ld, although apparently
Rob> gcc can find collect2.) I tried running gcc -v to see if I
Yes, okay.
Rob> could get it to tell me what it was doing that didn't work
Rob> (thinking possibly some environment variable was set wrong),
Rob> and uclibc hung so badly I had to kill it from another window.
I suggest you might want to build a static copy of "strace" to run
under the build environment.
>> It sounds like your builds are really what is broken, not the
>> root file system.
Rob> Yes. I agree with this. I'm not building user mode linux
Rob> properly. The root filesystem works when I chroot into it
Rob> instead of running uclibc against it.
As I understand it, you are building a rootfs so that you can
"natively" build for your target environment.
(I do not understand why this is necessary. )
>> Yes, it does need swap if you intend to run gcc.
Rob> A) Not to compile hello world it doesn't. I'm fairly certain
Rob> that can still be done in 16 megs, even with a modern gcc. B)
well, I run into this problem regularly whenever I do anything
complicated. I don't build with swap by default, and I run out very
quickly.
Rob> Interesting. Somebody said earlier that it's using /tmp
Rob> instead of /dev/shm in hopes of getting shared memory. On
Rob> knoppix, /tmp is a ramdisk. I wonder if that's confusing
Rob> it...? (dmesg doesn't say the out of memory killer's getting
Rob> triggered...)
I have /tmp be a ramdisk all the time.
Rob> Interesting. Running it with "TMPDIR=." at the start of the
Rob> command line, I got the same old panics the first three times
Rob> (and it didn't try to allocate any more memory than before,
Rob> presumably I need to tell it mem= for that), but on the fourth
Rob> attempt it got farther than it ever has before, and instead of
Rob> panicing it just hung. (Still didn't get my shell prompt, but
Rob> oh well.)
Hmm. random huh.
Rob> The tee output of four consecutive runs is attached. All I did
Rob> each time was ctrl-c out of the hang, cursor up, change the
You could hit ^C from a hang?
>> I suggest that you might want to try the UML image system in the
>> Openswan builds. It generates everything you need. It has been
>> used with 2.6.9+ guests, on 2.4 and 2.6 hosts.
Rob> Is this a binary, or a build script? (Do you have a URL?)
Build script.
www.openswan.org/code/
Get yourself 500Mb of disk space,
cp testing/utils/umlsetup-sample.sh umlsetup.sh
vi umlsetup.sh
make uml
You need to set "KERN=26" if using a 2.6 kernel.
- --
] ON HUMILITY: to err is human. To moo, bovine. | firewalls [
] Michael Richardson, Xelerance Corporation, Ottawa, ON |net architect[
] [EMAIL PROTECTED] http://www.sandelman.ottawa.on.ca/mcr/ |device driver[
] panic("Just another Debian GNU/Linux using, kernel hacking, security guy"); [
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: Finger me for keys
iQCVAwUBQeKdjoqHRg3pndX9AQHKZwP/WgLnAry9eH6zWDvvnJ12obewUjNGe5X/
PZE+rrnHMhc67C2npNVF2DkiTv9KwCHAyx1aQPgaNmr/PjyCEES2YrbCxPPP42ed
UG9lFmxAjyexlhuDEHbsA0UoOY4d1ILrOAEJOAKokWTwUhGLCq2yhlTUreEwHqvz
GI51yz4ErXk=
=ZzcU
-----END PGP SIGNATURE-----
-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel