All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Landley <rob@landley.net>
To: Frank Sorenson <frank@tuxrocks.com>
Cc: user-mode-linux-devel@lists.sourceforge.net
Subject: Re: [uml-devel] How stable is hostfs (and UML in general)?
Date: Sun, 9 Jan 2005 17:06:58 -0500	[thread overview]
Message-ID: <200501091706.58778.rob@landley.net> (raw)
In-Reply-To: <41E0C885.3020608@tuxrocks.com>

On Sunday 09 January 2005 01:00 am, Frank Sorenson wrote:

> I may not be able to answer all your questions, but I may be able to
> offer a few pointers.
>
> For the UML kernel version, the stock 2.6.x kernel is getting better,
> but still isn't the most stable and reliable kernel.  Right now, the
> most stable I've found is using 2.6.9 from kernel.org, with the -bb4
> patches from
> http://www.user-mode-linux.org/~blaisorblade/patches/guest/uml-2.6.9-bb4/

Hmmm...  Cool.  Grabbed it, I'll try to look through it tonight to see what's 
already in 2.6.10 and what isn't...

> There are several thing you can do to improve the speed at which the UML
> runs.  When UML starts, it opens a file in /tmp (or somewhere else if
> TMPDIR is set), mmaps it, and uses that as its memory.  To speed this
> up, make sure that it's located on a tmpfs-mounted filesystem (so it's
> real memory).

Ah.  Definitely a good thing to know, (and non-obvious, and not in any FAQ 
I've read yet).

On the other hand, if I bundle up the firmware linux build process, I'm not 
really going to be able to control what environment it runs in.  (That's kind 
of the point.  I'm developing/testing it on knoppix as a reasonable minimal 
build environment.)  I suppose I could mount tmpfs myself and set TMPDIR, but 
that assumes the script is being run as root and another benefit of using UML 
is getting away from the need to do that for chroot and mknod and such...

I remember way way back, that there used to be a gross hack people would do to 
get shared memory (before shm), which was create a file somewhere, have all 
the processes that needed to share memory open the file, and then delete the 
file.  That signalled the operating system to stop updating the on-disk copy.

I wonder if that old hack (deleting the file signalling there's no rush about 
writing stuff back to the disk anymore, although it's still your backing 
store) still works?

Why does it do this instead of just mallocing stuff, anyway?  (Quick and dirty 
shared memory again?)

> fstab:
> none   /UML/MEMORY      tmpfs   defaults,size=768M      0 0
>
> Starting the UML:
> export TMPDIR=/UML/MEMORY
> /UML/linux ...
>
>
> Also, with an unpatched host kernel, your UML will run slower.  If
> possible, patch the host kernel to allow UMLs to run in SKAS mode and
> take advantage of some SYSEMU code.  These patches are also here:
> http://www.user-mode-linux.org/~blaisorblade/patchlist.html or you can
> get the 2.6.10 host patch from
> http://uml.tuxrocks.com/Patches/host-skas3-2.6.10-v7.patch

I know.  But once again, I'm tryng to use UML in hopes of being more portable 
and doing without root access.  Patching the kernel defeats the point 
entirely, I might as well just tell people "you'll need to boot 2.6.10 to 
build this, and it needs to be run as root".

I'm more interested in correctness than performance at the moment.  As long as 
it WORKS, they can leave it running overnight for now...

> I don't know much about hostfs, so I can't give any real ideas there.
> UML doesn't support TLS yet, so make sure that your UML root_fs doesn't
> have a /lib/tls directory.

The knoppix host system does, but the build directory I'm giving it doesn't.

Hmmm...  I wonder what TLS _is_?  Internationalization, I suspect.  It seems 
unlikely knoppix would waste space on a second copy of libc for any other 
reason...

> Hope this helps,

Yes, actually.  Thanks. :)

> Frank

Rob


-------------------------------------------------------
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
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

  reply	other threads:[~2005-01-09 23:08 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-09  2:06 [uml-devel] How stable is hostfs (and UML in general)? Rob Landley
2005-01-09  6:00 ` Frank Sorenson
2005-01-09 22:06   ` Rob Landley [this message]
2005-01-10  1:53     ` Henrik Nordstrom
2005-01-10  6:34       ` Rob Landley
2005-01-10 13:47         ` Blaisorblade
2005-01-10 17:08         ` Nix
2005-01-10 14:43     ` Blaisorblade
2005-01-11  6:10       ` Rob Landley
2005-01-10  0:05 ` Michael Richardson
2005-01-10  6:20   ` Rob Landley
2005-01-10  6:41     ` Rob Landley
2005-01-10  8:48     ` Henrik Nordstrom
2005-01-11  5:58       ` Rob Landley
2005-01-10 15:21     ` Michael Richardson
2005-01-11  6:35       ` Rob Landley
2005-01-11 11:27         ` Henrik Nordstrom
2005-01-11 21:34         ` Michael Richardson
2005-01-11 23:23           ` Blaisorblade
2005-01-12 16:55             ` Michael Richardson
2005-01-12 17:09               ` 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=200501091706.58778.rob@landley.net \
    --to=rob@landley.net \
    --cc=frank@tuxrocks.com \
    --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.