On Fri Jul 8 02:21:12 EDT 2011, ba...@bitblocks.com wrote: > On Thu, 07 Jul 2011 09:10:49 +0800 Fernan Bolando <fernanbola...@mailc.net> > wrote: > > > > This allows the host to drawterm to the virtual machine. I failed to > > get it to work as NAT or Bridge. Running the nic as host only is ok if > > you just want to run plan9 without internet access. > > > > I hope you get NAT or host running. It would be nice. > > With Erik's help I tried various things. As per his suggestion > hardwiring igbe's irq to 9 made networking work (adding > ether0=type=igbe irq=9 > didn't work). While he was trying to figure out the irq > problem, I accidentally stumbled upon the "right" solution.
the problem is in the $PIR routing. there is the correct entry mapping irq 10 -> 9, but it does the mapping for 0.7.0, the acpi fn, and not 0.3.0. there isn't a lot of organized documentation on the quirks of $PIR routing, and most other implementation are so riddled with workarounds that it's hard to tell for a desk check (i don't have a mac) why they might accidently work. i suspect the $PIR link for acpi and for the nic are the same. devices with the same link need to apply the same mapping. it's a bug in the $PIR table, but this is a bug handled by so many oses, it's not clear that the vbox guys would know about the problem. if this is the case, a small reorg of the $PIR handling code should be able to recognize and handle this case. if someone could send me a dump of a problematic vbox $PIR table that would be great. you can dump it by changingthe if(0) to if(1) in pci.c:/^pcirouting\( — /sys/src/9/pc/pci.c:811,813. > Thanks to Erik for all his help. no problems. too bad it still doesn't work quite right. - erik