Skip to contentSkip to conversation

Error running UML

uml-devel Etay Meiri 2 participants 6 messages Sep 30, 2005 User-mode Linux (UML)

lore
Share & tools
lore

Etay Meiri

author
#0 lore raw

Hi,

I downloaded a root file system from:
http://www.stearns.org/uml-root/root_fs.fc-4-base.pristine.20050622.bz2
and followed the instructions in
http://www.stearns.org/uml-root/root_fs.fc-4-base.pristine.20050622.note
in order to extract it. I am able to mount it as a loop device without problems.
I applied the patch from
http://www.user-mode-linux.org/~blaisorblade/patches/guest/uml-2.6.13-bs2/uml-2.6.13-bs2.patch.bz2
to the 2.6.13 vanilla kernel and built a uml kernel with ext3 support not as a module.
Now when I run it I get the following error:

[cl@amber uml]$ ./vmlinux mem=160M ubd0=root_fs.2005062201 ubd1=swap root=/dev/ubd/0 con=pty con0=fd:0,fd:1
Checking for /proc/mm...not found
Checking for the skas3 patch in the host...not found
UML running in SKAS0 mode
Checking PROT_EXEC mmap in /tmp...OK
Adding 15347712 bytes to physical memory to account for exec-shield gap

[42949372.960000] Linux version 2.6.13-bs2 (cl@amber) (gcc version
4.0.120050727 (Red Hat
4.0.1-5)) #1 Fri Sep 30 13:10:14 IDT 2005
[42949372.960000] Built 1 zonelists
[42949372.960000] Kernel command line: mem=160M ubd0=root_fs.2005062201
ubd1=swap root=/dev/ubd/0 con=pty con0=fd:0,fd:1
[42949372.960000] PID hash table entries: 1024 (order: 10, 16384 bytes)
[42949372.960000] Dentry cache hash table entries: 32768 (order: 5, 131072
bytes)
[42949372.960000] Inode-cache hash table entries: 16384 (order: 4, 65536
bytes)
[42949372.960000] Memory: 153984k available
[42949373.210000] Security Framework v1.0.0 initialized
[42949373.210000] SELinux: Initializing.
[42949373.210000] SELinux: Starting in permissive mode
[42949373.210000] selinux_register_security: Registering secondary module
capability
[42949373.210000] Capability LSM initialized as secondary
[42949373.210000] Mount-cache hash table entries: 512
[42949373.220000] Checking for host processor cmov support...Yes
[42949373.220000] Checking for host processor xmm support...No
[42949373.220000] Checking that ptrace can change system call numbers...OK
[42949373.220000] Checking syscall emulation patch for ptrace...missing
[42949373.220000] Checking that host ptys support output SIGIO...Yes
[42949373.220000] Checking that host ptys support SIGIO on close...No,
enabling workaround
[42949373.220000] Checking for /dev/anon on the host...Not available (open
failed with errno 2)
[42949373.220000] NET: Registered protocol family 16
[42949373.230000] mconsole (version 2) initialized on
/home/cl/.uml/aAKSzJ/mconsole
[42949373.230000] audit: initializing netlink socket (disabled)
[42949373.230000] audit(0.270:1): initialized
[42949373.230000] VFS: Disk quotas dquot_6.5.1
[42949373.230000] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[42949373.230000] SELinux: Registering netfilter hooks
[42949373.280000] Initializing Cryptographic API
[42949373.280000] io scheduler noop registered
[42949373.280000] io scheduler anticipatory registered
[42949373.280000] io scheduler deadline registered
[42949373.280000] io scheduler cfq registered
[42949373.280000] RAMDISK driver initialized: 16 RAM disks of 16384K size
1024 blocksize
[42949373.280000] loop: loaded (max 8 devices)
[42949373.280000] nbd: registered device at major 43
[42949373.300000] NET: Registered protocol family 2
[42949373.430000] IP route cache hash table entries: 2048 (order: 1, 8192
bytes)
[42949373.430000] TCP established hash table entries: 8192 (order: 4, 65536
bytes)
[42949373.430000] TCP bind hash table entries: 8192 (order: 5, 229376 bytes)
[42949373.430000] TCP: Hash tables configured (established 8192 bind 8192)
[42949373.430000] TCP reno registered
[42949373.430000] TCP bic registered
[42949373.430000] Initializing IPsec netlink socket
[42949373.430000] NET: Registered protocol family 1
[42949373.430000] NET: Registered protocol family 17
[42949373.430000] Initialized stdio console driver
[42949373.430000] Console initialized on /dev/tty0
[42949373.430000] ubda: unknown partition table
[42949373.560000] ubdb: unknown partition table
[42949373.560000] VFS: Cannot open root device "ubd/0" or unknown-block(0,0)
[42949373.560000] Please append a correct "root=" boot option
[42949373.560000] Kernel panic - not syncing: VFS: Unable to mount root fs
on unknown-block(0,0)
[42949373.560000]
[42949373.560000] EIP: 0073:[<a0382721>] CPU: 0 Not tainted ESP:
007b:b7f7df9c EFLAGS: 00200246
[42949373.560000] Not tainted
[42949373.560000] EAX: 00000000 EBX: 00000a1f ECX: 00000013 EDX: 00000a1f
[42949373.560000] ESI: 00000a1e EDI: 00000011 EBP: b7f7dfb8 DS: 007b ES:
007b
[42949373.560000] aae97ac0: [<a006304d>] show_regs+0x309/0x378
[42949373.560000] aae97af0: [<a002d1c3>] panic_exit+0x43/0x8c
[42949373.560000] aae97b20: [<a0097206>] notifier_call_chain+0x2e/0x88
[42949373.560000] aae97b50: [<a006d7df>] panic+0x9f/0x1f8
[42949373.560000] aae97b80: [<a000231a>] mount_block_root+0x116/0x1cc
[42949373.560000] aae97bd0: [<a00025ee>] mount_root+0x7e/0x94
[42949373.560000] aae97bf0: [<a000266d>] prepare_namespace+0x69/0x224
[42949373.560000] aae97c00: [<a001c3c7>] init+0x1d7/0x220
[42949373.560000] aae97c20: [<a00227c5>] run_kernel_thread+0x59/0x74
[42949373.560000] aae97ce0: [<a003538e>] new_thread_handler+0xd2/0x138
[42949373.560000] aae97d20: [<b7f7f420>] 0xb7f7f420
[42949373.560000]
[42949373.560000]

[cl@amber uml]$

Any idea?

Thanks,

--
------------------------------------------------------
Etay Meiri
[email protected]

#1 lore raw
Quoted 14 lines · Etay Meiri

Hi,

I downloaded a root file system from:
http://www.stearns.org/uml-root/root_fs.fc-4-base.pristine.20050622.bz2
and followed the instructions in
http://www.stearns.org/uml-root/root_fs.fc-4-base.pristine.20050622.note
in order to extract it. I am able to mount it as a loop device without problems.
I applied the patch from
http://www.user-mode-linux.org/~blaisorblade/patches/guest/uml-2.6.13-bs2/u
ml-2.6.13-bs2.patch.bz2 to the 2.6.13 vanilla kernel and built a uml kernel with ext3 support not as a module.
Now when I run it I get the following error:

Quoted 2 lines

[cl@amber uml]$ ./vmlinux mem=160M ubd0=root_fs.2005062201 ubd1=swap root=/dev/ubd/0 con=pty con0=fd:0,fd:1

root=/dev/ubd/0 is wrong for two reasons:
*) you don't need to specify root=, UML automatically sets it to point to ubd0

*) /dev/ubd/0 is the DevFS syntax, and since 2.6.13 DevFS is no more supported.

*) I'm not even sure if root=/dev/ubd0 would work - Uml, to be sure, uses major and minor (root=98:0).

Thanks for attaching the logs, but look below:

Quoted 6 lines
[42949373.560000] VFS: Cannot open root device "ubd/0" or
unknown-block(0,0) [42949373.560000] Please append a correct "root=" boot
option
[42949373.560000] Kernel panic - not syncing: VFS: Unable to mount root fs
on unknown-block(0,0)
[42949373.560000]

The trace below is always output in case of panic, but in this case it's not a kernel bug, so don't get confused by it.

Quoted 19 lines
[42949373.560000] EIP: 0073:[<a0382721>] CPU: 0 Not tainted ESP:
007b:b7f7df9c EFLAGS: 00200246
[42949373.560000] Not tainted
[42949373.560000] EAX: 00000000 EBX: 00000a1f ECX: 00000013 EDX: 00000a1f
[42949373.560000] ESI: 00000a1e EDI: 00000011 EBP: b7f7dfb8 DS: 007b ES:
007b
[42949373.560000] aae97ac0: [<a006304d>] show_regs+0x309/0x378
[42949373.560000] aae97af0: [<a002d1c3>] panic_exit+0x43/0x8c
[42949373.560000] aae97b20: [<a0097206>] notifier_call_chain+0x2e/0x88
[42949373.560000] aae97b50: [<a006d7df>] panic+0x9f/0x1f8
[42949373.560000] aae97b80: [<a000231a>] mount_block_root+0x116/0x1cc
[42949373.560000] aae97bd0: [<a00025ee>] mount_root+0x7e/0x94
[42949373.560000] aae97bf0: [<a000266d>] prepare_namespace+0x69/0x224
[42949373.560000] aae97c00: [<a001c3c7>] init+0x1d7/0x220
[42949373.560000] aae97c20: [<a00227c5>] run_kernel_thread+0x59/0x74
[42949373.560000] aae97ce0: [<a003538e>] new_thread_handler+0xd2/0x138
[42949373.560000] aae97d20: [<b7f7f420>] 0xb7f7f420
[42949373.560000]
[42949373.560000]
Signature · 22 lines
Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!".
Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894)
http://www.user-mode-linux.org/~blaisorblade

	

	
		
___________________________________ 
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
http://mail.yahoo.it



-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
author
#2 lore raw

Thanks for your response.

I tried running it with a simple: ./vmlinux ubd0=root_fs.2005062201 and now it says:

[42949373.420000] Console initialized on /dev/tty0
[42949373.420000] ubda: unknown partition table
[42949373.420000] kjournald starting. Commit interval 5 seconds
[42949373.420000] EXT3-fs: mounted filesystem with ordered data mode.
[42949373.420000] VFS: Mounted root (ext3 filesystem) readonly.
[42949373.420000] Warning: unable to open an initial console.
[42949373.420000] Kernel panic - not syncing: Attempted to kill init!

Looks like it mounted the root file system but has a problem opening a console. Maybe I'm missing some console related option in the kernel config?

Thanks,

-Etay

Quoted 74 lines · Blaisorblade
Quoted 10 lines · Etay Meiri

Hi,

I downloaded a root file system from:
http://www.stearns.org/uml-root/root_fs.fc-4-base.pristine.20050622.bz2
and followed the instructions in
http://www.stearns.org/uml-root/root_fs.fc-4-base.pristine.20050622.note
in order to extract it. I am able to mount it as a loop device without problems.
I applied the patch from

http://www.user-mode-linux.org/~blaisorblade/patches/guest/uml-2.6.13-bs2/u

Quoted 1 line

ml-2.6.13-bs2.patch.bz2 to the 2.6.13 vanilla kernel and built a uml

kernel

Quoted 5 lines

with ext3 support not as a module.
Now when I run it I get the following error:

[cl@amber uml]$ ./vmlinux mem=160M ubd0=root_fs.2005062201 ubd1=swap root=/dev/ubd/0 con=pty con0=fd:0,fd:1

root=/dev/ubd/0 is wrong for two reasons:
*) you don't need to specify root=, UML automatically sets it to point to ubd0

*) /dev/ubd/0 is the DevFS syntax, and since 2.6.13 DevFS is no more supported.

*) I'm not even sure if root=/dev/ubd0 would work - Uml, to be sure, uses major and minor (root=98:0).

Thanks for attaching the logs, but look below:

Quoted 2 lines
[42949373.560000] VFS: Cannot open root device "ubd/0" or

unknown-block(0,0) [42949373.560000] Please append a correct "root="

boot

Quoted 2 lines

option

[42949373.560000] Kernel panic - not syncing: VFS: Unable to mount root

fs

Quoted 2 lines

on unknown-block(0,0)

[42949373.560000]

The trace below is always output in case of panic, but in this case it's not a
kernel bug, so don't get confused by it.

Quoted 4 lines
[42949373.560000] EIP: 0073:[<a0382721>] CPU: 0 Not tainted ESP:
007b:b7f7df9c EFLAGS: 00200246
[42949373.560000] Not tainted
[42949373.560000] EAX: 00000000 EBX: 00000a1f ECX: 00000013 EDX:

00000a1f

Quoted 7 lines
[42949373.560000] ESI: 00000a1e EDI: 00000011 EBP: b7f7dfb8 DS: 007b ES:
007b
[42949373.560000] aae97ac0: [<a006304d>] show_regs+0x309/0x378
[42949373.560000] aae97af0: [<a002d1c3>] panic_exit+0x43/0x8c
[42949373.560000] aae97b20: [<a0097206>] notifier_call_chain+0x2e/0x88
[42949373.560000] aae97b50: [<a006d7df>] panic+0x9f/0x1f8
[42949373.560000] aae97b80: [<a000231a>] mount_block_root+0x116/0x1cc
Quoted 8 lines
[42949373.560000] aae97bd0: [<a00025ee>] mount_root+0x7e/0x94
[42949373.560000] aae97bf0: [<a000266d>] prepare_namespace+0x69/0x224
[42949373.560000] aae97c00: [<a001c3c7>] init+0x1d7/0x220
[42949373.560000] aae97c20: [<a00227c5>] run_kernel_thread+0x59/0x74
[42949373.560000] aae97ce0: [<a003538e>] new_thread_handler+0xd2/0x138
[42949373.560000] aae97d20: [<b7f7f420>] 0xb7f7f420
[42949373.560000]
[42949373.560000]

--
Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!". Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894)
http://www.user-mode-linux.org/~blaisorblade

Quoted 5 lines

___________________________________
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB
http://mail.yahoo.it

--
------------------------------------------------------
Etay Meiri
[email protected]

#3 lore raw
Quoted 4 lines · Etay Meiri

Thanks for your response.

I tried running it with a simple: ./vmlinux ubd0=root_fs.2005062201 and now it says:

Well, the only option which *must* be dropped is root=/dev/ubd/0. The rest is harmless, and may help.

Note that if you use con=pty rather than con=xterm, you'll need to connect to the consoles manually and look for them. Plus /dev/pty* are deprecated, and some host kernel don't support them any more.

At least, using con=pts is more modern (it's supported on any recent kernel).

Quoted 6 lines
[42949373.420000] Console initialized on /dev/tty0
[42949373.420000] ubda: unknown partition table
[42949373.420000] kjournald starting. Commit interval 5 seconds
[42949373.420000] EXT3-fs: mounted filesystem with ordered data mode.
[42949373.420000] VFS: Mounted root (ext3 filesystem) readonly.
[42949373.420000] Warning: unable to open an initial console.

This warning, normally, is harmless.

Quoted 5 lines
[42949373.420000] Kernel panic - not syncing: Attempted to kill init!

Looks like it mounted the root file system but has a problem opening a console. Maybe I'm missing some console related option in the kernel config?

It's possible. I would first check also if init=/bin/sh makes it boot, to distinguish between fs problems and console problems. Also, remember to "mv /lib/tls /lib/tls.away" in the guest fs.

Due to a bug in kconfig, which wasn't fixed because the fix wasn't nice, if you do "make *config ARCH=um" on an empty tree it may pick as default values from /boot/config-uname -r. To avoid this, you need to move away your .config and do:

make defconfig ARCH=um
and only afterwards, depending on your taste for configuration tool, make {menu,x,g}config ARCH=um
i.e. either make menuconfig ARCH=um or the other similar ones.

Signature · 22 lines
Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!".
Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894)
http://www.user-mode-linux.org/~blaisorblade

	

	
		
___________________________________ 
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
http://mail.yahoo.it



-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
author
#4 lore raw

I tries the following without success:

1. 'con=pts' instead of 'con=pty'.
2. 'con=xterm' instead of 'con=pty'.
3. added 'init=/bin/sh' to both of the above.
4. compiled the guest kernel again with 'make defconfig'.
5. moved away /lib/tls in the guest fs.

I'm still getting the same warning about the console. When I try with xterm it just opens and immediately closes the xterm and I don't have a chance to see what's there.

-Etay

Quoted 55 lines · Blaisorblade
Quoted 4 lines · Etay Meiri

Thanks for your response.

I tried running it with a simple: ./vmlinux ubd0=root_fs.2005062201 and now it says:

Well, the only option which *must* be dropped is root=/dev/ubd/0. The rest is
harmless, and may help.

Note that if you use con=pty rather than con=xterm, you'll need to connect to
the consoles manually and look for them. Plus /dev/pty* are deprecated, and
some host kernel don't support them any more.

At least, using con=pts is more modern (it's supported on any recent kernel).

Quoted 6 lines
[42949373.420000] Console initialized on /dev/tty0
[42949373.420000] ubda: unknown partition table
[42949373.420000] kjournald starting. Commit interval 5 seconds
[42949373.420000] EXT3-fs: mounted filesystem with ordered data mode.
[42949373.420000] VFS: Mounted root (ext3 filesystem) readonly.
[42949373.420000] Warning: unable to open an initial console.

This warning, normally, is harmless.

Quoted 5 lines
[42949373.420000] Kernel panic - not syncing: Attempted to kill init!

Looks like it mounted the root file system but has a problem opening a console. Maybe I'm missing some console related option in the kernel config?

It's possible. I would first check also if init=/bin/sh makes it boot, to distinguish between fs problems and console problems. Also, remember to "mv /lib/tls /lib/tls.away" in the guest fs.

Due to a bug in kconfig, which wasn't fixed because the fix wasn't nice, if
you do "make *config ARCH=um" on an empty tree it may pick as default values
from /boot/config-uname -r. To avoid this, you need to move away your .config and do:

make defconfig ARCH=um
and only afterwards, depending on your taste for configuration tool, make {menu,x,g}config ARCH=um
i.e. either make menuconfig ARCH=um or the other similar ones. --
Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!". Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894)
http://www.user-mode-linux.org/~blaisorblade

Quoted 5 lines

___________________________________
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB
http://mail.yahoo.it

--
------------------------------------------------------
Etay Meiri
[email protected]

author
#5 lore raw

Seems like the root fs I was using was not UML ready and needed quite a lot of work. I followed the instructions in:
http://uml.harlowhill.com/index.php/UML_Fedora_Core_4
and was able to get it up and running.

Thanks for you help, Blaisorblade.

-Etay

Quoted 80 lines · Etay Meiri

I tries the following without success:

1. 'con=pts' instead of 'con=pty'.
2. 'con=xterm' instead of 'con=pty'.
3. added 'init=/bin/sh' to both of the above.
4. compiled the guest kernel again with 'make defconfig'.
5. moved away /lib/tls in the guest fs.

I'm still getting the same warning about the console. When I try with xterm it just opens and immediately closes the xterm and I don't have a chance to see what's there.

-Etay

Quoted 57 lines · Blaisorblade
Quoted 4 lines · Etay Meiri

Thanks for your response.

I tried running it with a simple: ./vmlinux ubd0=root_fs.2005062201 and now it says:

Well, the only option which *must* be dropped is root=/dev/ubd/0. The rest is
harmless, and may help.

Note that if you use con=pty rather than con=xterm, you'll need to connect to
the consoles manually and look for them. Plus /dev/pty* are deprecated, and
some host kernel don't support them any more.

At least, using con=pts is more modern (it's supported on any recent kernel).

Quoted 6 lines
[42949373.420000] Console initialized on /dev/tty0
[42949373.420000] ubda: unknown partition table
[42949373.420000 ] kjournald starting. Commit interval 5 seconds
[42949373.420000] EXT3-fs: mounted filesystem with ordered data mode.
[42949373.420000] VFS: Mounted root (ext3 filesystem) readonly.

[42949373.420000 ] Warning: unable to open an initial console.

This warning, normally, is harmless.

Quoted 5 lines
[42949373.420000] Kernel panic - not syncing: Attempted to kill init!

Looks like it mounted the root file system but has a problem opening a console. Maybe I'm missing some console related option in the kernel config?

It's possible. I would first check also if init=/bin/sh makes it boot, to
distinguish between fs problems and console problems. Also, remember to "mv /lib/tls /lib/tls.away" in the guest fs.

Due to a bug in kconfig, which wasn't fixed because the fix wasn't nice, if
you do "make *config ARCH=um" on an empty tree it may pick as default values
from /boot/config-uname -r. To avoid this, you need to move away your .config and do:

make defconfig ARCH=um
and only afterwards, depending on your taste for configuration tool, make {menu,x,g}config ARCH=um
i.e. either make menuconfig ARCH=um or the other similar ones. --
Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!".
Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894)
http://www.user-mode-linux.org/~blaisorblade<http://www.user-mode-linux.org/%7Eblaisorblade>

Quoted 5 lines

___________________________________
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB
http://mail.yahoo.it

Quoted 5 lines

--
------------------------------------------------------
Etay Meiri
[email protected]

--
------------------------------------------------------
Etay Meiri
[email protected]