From mboxrd@z Thu Jan 1 00:00:00 1970 From: erik quanstrom Date: Fri, 8 Jul 2011 11:14:51 -0400 To: 9fans@9fans.net Message-ID: <856dd0396cfa3bdef849de6d15d42da8@coraid.com> In-Reply-To: <20110708061922.1CEB3B827@mail.bitblocks.com> References: <20110706184008.AC595B827@mail.bitblocks.com> <20110708061922.1CEB3B827@mail.bitblocks.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Subject: Re: [9fans] 9atom & virtualbox 4.0.10 networking issue Topicbox-Message-UUID: fc1c59cc-ead6-11e9-9d60-3106f5b1d025 On Fri Jul 8 02:21:12 EDT 2011, bakul@bitblocks.com wrote: > On Thu, 07 Jul 2011 09:10:49 +0800 Fernan Bolando 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