On Thu, Jul 21, 2005 at 01:23:46AM +0200, Blaisorblade wrote:
> Which was the old UML version? Which is your guest distro?
> Also, have you tested the old UML releases on this new host kernel version? 
> Since UML address space is getting shrinked down to 32M, I fear address space 
> randomization (introduced in 2.6.12) may be playing a role.

It looks like VA space randomization is the culprit.  The problem only
shows up when the host is 2.6.12, and can be solved by setting the
kernel.randomize_va_space sysctl to zero.  Thanks for the pointer there.

> >   Kernel virtual memory size shrunk to 32505856 bytes
> Ok, here it's going to use just 32M of kernel memory rather than 768M... Did 
> it happen even before?

I hadn't noticed that before, not sure what the problem is there.  That
figure is actually 31M rather than 32M - does that give a clue to the
cause?

> Another thing to check is if you have changed some UML config option when 
> recompiling, like for instance HIGHMEM or SMP or 3_LEVEL_PAGETABLES.

The host is a uniprocessor Pentium 4 without HT, but I've enabled
CONFIG_SMP because I want to use the same kernel on another machine
which does have HT.  Unfortunately I don't have a copy of the old kernel
configs used, before I started using kernel-package to make the kernels.

Since the machine only has 1G of RAM, HIGHMEM wasn't enabled, as I
understood from the kconfig description it wasn't necessary unless I had
more than 1G of RAM.  Changing to HIGHMEM4G on the host doesn't solve
the problem though.  The current host config is:

  [EMAIL PROTECTED]:~$ egrep '(HIGHMEM|SMP|3_LEVEL_PGTABLES)' 
/boot/config-`uname -r`
  # CONFIG_X86_BIGSMP is not set
  CONFIG_SMP=y
  # CONFIG_NOHIGHMEM is not set
  CONFIG_HIGHMEM4G=y
  # CONFIG_HIGHMEM64G is not set
  CONFIG_HIGHMEM=y
  CONFIG_X86_FIND_SMP_CONFIG=y
  CONFIG_X86_SMP=y

And on the guest:

  [EMAIL PROTECTED]:~$ linux --showconfig | egrep 
'(HIGHMEM|SMP|3_LEVEL_PGTABLES)'
  # CONFIG_3_LEVEL_PGTABLES is not set
  # CONFIG_SMP is not set
  CONFIG_HIGHMEM=y
  CONFIG_BROKEN_ON_SMP=y

Kconfig says "Three-level pagetables will let UML have more than 4G of
physical memory", so I guess I don't need that?

Does BROKEN_ON_SMP=y or SMP not being set on the guest conflict with
SMP=y on the host?

Thanks again for your help.


-- 
Ruaidhri


-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
User-mode-linux-user mailing list
User-mode-linux-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user

Reply via email to