I am a totally kernel newbie. I want to dig into the kernel's details on TCP/IP implementation. However I donot have too much machine to run kgdb. If I use kgdb, I need at least three machines. I have the following questions to use UML.
1). Can I use UML to debug the TCP/IP implementation in Linux? I have two Linux boxes connected by a hub. I know how to setup the network with the existing kernel. From my understanding, the UML runs above the native linux kernel. Is that mean I have to setup network for UML? If yes, how to do that? How to associate the two networks.
2). If I want to modify some codes in TCP/IP implementation in the linux kernel, how to do that with UML? Do I need to install the patch to the native kernel (existing kernel)? Do I need to install the patch to the UML too? Or just need to install it on the UML?
Thanks for help.
Post your free ad now! Yahoo! Canada Personals
I'm trying to follow along the HOWTO on the Web site. When I try to
I get an error:
VFS: Cannot open root device "ubd0" or 62:00
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 62:00
If I rename the file root_fs and just type linux, it works. This is
fine except that I want to use a COW file and the instructions in the
HOWTO start off with udb0 ...
I also tried:
linux udb0=Debian-3.0r0.ext2 root=/dev/udb0
But that had the same result.
On Fri, Nov 07, 2003 at 06:23:36PM -0500, Jeff Dike wrote:
> jennyw@... said:
> > linux udb0=./Debian-3.0r0.ext2
> This is a popular UML typo :-)
Thanks all for the typo correction! Now a new problem. I was running UML
okay but then messed up the instance. I thought, fine, I'll just
download the file system again (from sourceforge ...
Debian-3.0r0.ext2.bz2). The problem is that now it gives me this when
Checking root file system...
fsck 1.27 (8-Mar-2002)
fsck.ext2: No such file or directory while trying to open /dev/ubd/0
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate
e2fsck -b 8193 <device>
Any ideas why this might be the case? The date on the Debian fs is from
March ... I can't imagine it would have changed.
Also, I noticed that there is no /dev/udb/0 ... there's a /dev/udb0.
Why is it trying to open /dev/udb/0?
> Checking root file system...
> fsck 1.27 (8-Mar-2002)
> fsck.ext2: No such file or directory while trying to open /dev/ubd/0
> The superblock could not be read or does not describe a correct ext2
> filesystem. If the device is valid and it really contains an ext2
> filesystem (and not swap or ufs or something else), then the superblock
> is corrupt, and you might try running e2fsck with an alternate
> e2fsck -b 8193 <device>
> Any ideas why this might be the case? The date on the Debian fs is from
> March ... I can't imagine it would have changed.
> Also, I noticed that there is no /dev/udb/0 ... there's a /dev/udb0.
> Why is it trying to open /dev/udb/0?
I use the same debian fs image for my umls...
It is trying to run fsck on /dev/ubd/0 because it is listed in the
/etc/fstab in that debian fs you have. /dev/ubd/0 is the device name that
the ubd0 device gets when using devfs. If you enable devfs in your uml
kernel, there will be a /dev/ubd/0 (instead of /dev/ubd0).
So to fix it you can either edit the uml's /etc/fstab and change /dev/ubd/0
to /dev/ubd0, or you can rebuild your uml kernel with devfs support (and the
auto mount at boot option). I prefer devfs myself.
On Fri, Nov 07, 2003 at 01:48:33PM -0800, jennyw wrote:
> I'm trying to follow along the HOWTO on the Web site. When I try to
> linux udb0=./Debian-3.0r0.ext2
> I also tried:
> linux udb0=Debian-3.0r0.ext2 root=/dev/udb0
Looks like you transposed the d and b in ubd0. That should be 'ubd0' rather
than 'udb0'. I do that like every single time too...
FWIW I renamed my root fs file to 'Debian-3.0r0.ext2' and started uml with
'./linux ubd0=./Debian-3.0r0.ext2' and it works.