[Top][All Lists]

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

[Qemu-devel] qemu and solaris

From: Paul Jakma
Subject: [Qemu-devel] qemu and solaris
Date: Mon, 19 Jul 2004 16:11:00 +0100 (IST)


I've gotten Solaris 10 build 60 (i86pc) to boot under qemu 0.6.0 and recent CVS, runs quite nicely :). Some issues though:

- PCI IDE does not work. Drive access times out and pci-ide (eventually) will print out error code=0x03.

With the ISA 'ata' driver it works fine.

- ne2k networking does not work with the (non-Sun) 'ni' driver. The driver (eventually) prints errors about 'Tx timeout' and resets the card, ad infinitum. This might be a problem with the ni driver, though I believe

- I've had better luck with Andrew's patch to add support for AMD PCNet emulation (Solaris provides it's own PCNet driver, pcn). This works, and ICMP between solaris and host works, however I can not telnet or ssh to the host, nor does DNS work within the host. If i snoop the 'pcn0' interface in solaris, it prints errors of the form:

        'IP truncated: header missing X bytes'

Where X is typically 10, 12,14 or 17. Not had a chance to debug this further.

- vl.c::tun_open() writes 'tun%d' to (struct ifreq).ifname, the TUNSETIFF ioctl does not appear to update the ifreq ifname on my system (FC2 2.6.7-1.486 x86_64 kernel), is it supposed to? tun_open appears to follow the example in kernel Documentation/networking/tuntap.txt, but ifname is not modified. Nor does struct ifreq ifname get updated if i leave it blank before the ioctl. Strange. I had to change 'tun%d' to 'tun0' to get things to work (otherwise tun%d is passed to the ifup script).

- there appear to be some keyboard problems.

1. If you switch console to the qemu console, it is very difficult to get back to the 'host' console, you have to repeatedly press ctrl+shift+f1 and eventually you get lucky and it switches.

2. I have the xkbd ctrl:swapcaps option set. So ctrl and caps-lock on my PC keyboard are swapped. However, in the emulated host, holding ctrl (ie the key marked caps-lock on my keyboard) turns on caps-lock (but it isnt sticky, releasing ctrl turns off caps-lock), pressing caps-lock (ie marked 'ctrl' on my PC keyboard) holds 'ctrl' on the host and it is sticky (as caps-lock would be). Eg, to type ctrl-c in the host i have to do:

press the key marked 'control' (which sets caps-lock on the real host X server), press c, press the key marked 'control' again (to unset caps-lock, which the qemu host thinks is ctrl).

3. caps-lock gets stuck on sometimes if i press ctrl+shift (ctrl as in the X meaning of ctrl, which is marked caps-lock on my keyboard) to leave pointer grab and return to it. Pressing ctrl and shift independently and leaving/entering screen grab a few times eventually fixes this. I'm guessing this is related to 2 and the general confusion ctrl:swapcaps seems to cause for SDL/qemu.

- The Solaris x86 Xserver works perfectly with 16bit colour depth and GD54xx. However, many pixmaps are displayed incorrectly with depth 8bpp. No idea whether this is a Solaris or qemu problem.

However, other than that, Solaris 10 works very well under Qemu. The only real problem is the inability to get networking working. From what I gather Qemu is not able to redirect serial0 to a pty, correct? Because otherwise I could setup ppp between the solaris qemu host and the native host.

Paul Jakma      address@hidden  address@hidden  Key ID: 64A2FF6A
        warning: do not ever send email to address@hidden
You are confused; but this is your normal state.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]