Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: problems attempting remote NFS root



Hi!

> It never returns from tsleep:
> [1] nfs_boot: root=192.168.1.17:/export/xen31
> [1] nfs_boot_setaddress: sleeping (150)

Next thing to check is if timer interrupts happen, could you enable the code
in arch/xen/xen/clock.c's xen_timer_handler which is disabled with #if 0.
It should then print a message to the console every second.  Additionally it
would be good to check if events/interrupts are enable before going to
sleep.  Could you add the following:
        {
                extern unsigned long event_mask;
                extern unsigned long *HYPERVISOR_shared_info;

                printf("pending %08lx mask1 %08lx mask2 %08lx\n",
                    HYPERVISOR_shared_info[0], HYPERVISOR_shared_info[1],
                    event_mask);
        }
        /* give the link some time to get up */
        tsleep(nfs_boot_setaddress, PZERO, "nfsbtd", 3 * hz);

It should then print the following:
[7] nfs_boot: root=172.20.4.13:/netboot/qube
[7] pending 00000000 mask1 80000012 mask2 00000012
[7] ping!!! hz=50 regs 0xc03fcc7c level 12 ipending 00000000
[7] ping!!! hz=50 regs 0xc03fcce0 level 12 ipending 00000000
[7] ping!!! hz=50 regs 0xc03fcce0 level 12 ipending 00000000
[7] nfs_boot: mountd `172.20.4.13:/netboot/qube', error=13
[7] no file system for xennet0

The 8 in mask1 is the master event enable bit, the 1 in mask1/2 is network
interrupts and the 2 in mask1/2 is timer interrupts.

> Commenting out the tsleep
> at least proves that the network is functional:

Do you get a reply if you ping the machine?

> I'll get the NFS root configured and see what happens, and maybe
> try MFS as well.  Do you have a recommended method for getting a
> debugger attached to the kernel running in the VM?

Unfortunately no and this will be hard to diagnose/debug if context switches
don't work on your machine.  In Xen 1.2 there are no communication channels
to the domain other than the network.  Xen 1.3 will make this a lot easier
with bi-directional console/virtual serial ports and remote gdb support at
the Xen level.

     christian




Home | Main Index | Thread Index | Old Index