9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] FYI: etherigbe driver patch for QEMU 0.11.x
@ 2010-10-11  0:51 Ryousei Takano
  0 siblings, 0 replies; only message in thread
From: Ryousei Takano @ 2010-10-11  0:51 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

Hi all,

Recently, Sakura VPS 980, which is a KVM-based VPS service, has been
launched in Japan.
I tried to install Plan 9 on it, and now Plan 9 is working!!

    http://vps.sakura.ad.jp/ (Sorry, only in Japanese)
    http://yfrog.com/ncwj6p (screen shot)

I found 2 problems of the etherigbe driver in the process.  Note that
these problems are caused by
the e1000 driver of the QEMU 0.11 and earlier.

1) etherigbe cannot read EEPROM properly.  This bug is fixed on the QEMU 0.12.
Unfortunately Sakura VPS 980 may use the QEMU 0.11.x, and we cannot
change the version.
    https://bugs.launchpad.net/qemu/+bug/581737

2) etherigbe get the cache line size of 0.  I fixed the value to 32 bytes.
I am not sure my workaound is appropriate.

My patch is here:
term% diff -c etherigbe.c.orig etherigbe.c
etherigbe.c.orig:1680,1686 - etherigbe.c:1680,1686
  		}
  		break;
  	}
- 	snprint(rop, sizeof(rop), "S :%dDCc;", bits+3);
+ 	snprint(rop, sizeof(rop), "CcS :%dDCc;", bits+3);

  	for(addr = 0; addr < 0x40; addr++){
  		/*
etherigbe.c.orig:1953,1959 - etherigbe.c:1953,1961
  				break;
  			case 0x00:
  			case 0xFF:
- 				print("igbe: unusable CLS - %d\n", cls*4);
+ #define CACHELINESZ 32
+ 				cls = CACHELINESZ / sizeof(long);
+ 				pcicfgw8(p, PciCLS, cls);
  				break;
  			case 0x08:
  			case 0x10:


I hope to share this information with others who want to install Plan
9 on the QEMU.

Thanks,
Ryousei



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-10-11  0:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-10-11  0:51 [9fans] FYI: etherigbe driver patch for QEMU 0.11.x Ryousei Takano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).