On Wed, Mar 21, 2012 at 03:01:46PM +0800, romaby...@gmail.com wrote: > > No idea how well OpenBSD does in xen. > > Last time I tried OpenBSd in Xen ~2 years it worked like crap. > Couldn't get networking > to work at all and it was slow as a dog.
I am running OpenBSD on Xen and it works very well: $ sysctl kern.version kern.version=OpenBSD 5.1 (VICTOR) #2: Mon Feb 13 10:03:45 CET 2012 oc@localhost:/usr/src/sys/arch/amd64/compile/VICTOR $ dmesg | grep '^bios0:' bios0: vendor Xen version "3.4.2" date 11/16/2009 bios0: Xen HVM domU $ I use Panix (http://www.panix.com/corp/v-colo/) and am happy. You just have to apply the 2 following patches (credit to Brian Marcotte): --- ./sys/dev/acpi/acpi.c.orig Mon Jan 10 15:04:33 2011 +++ ./sys/dev/acpi/acpi.c Wed May 4 20:13:47 2011 @@ -609,6 +609,7 @@ return; } +#if 0 /* * Check if we are able to enable ACPI control */ @@ -617,6 +618,7 @@ printf(", ACPI control unavailable\n"); return; } +#endif /* * Set up a pointer to the firmware control structure @@ -696,6 +698,7 @@ * This may prevent thermal control on some systems where * that actually does work */ +#if 0 acpi_write_pmreg(sc, ACPIREG_SMICMD, 0, sc->sc_fadt->acpi_enable); idx = 0; do { @@ -704,7 +707,20 @@ return; } } while (!(acpi_read_pmreg(sc, ACPIREG_PM1_CNT, 0) & ACPI_PM1_SCI_EN)); - +#else + if (sc->sc_fadt->smi_cmd && sc->sc_fadt->acpi_enable) { + acpi_write_pmreg(sc, ACPIREG_SMICMD, 0, + sc->sc_fadt->acpi_enable); + idx = 0; + do { + if (idx++ > ACPIEN_RETRIES) { + printf(", can't enable ACPI\n"); + return; + } + } while (!(acpi_read_pmreg(sc, ACPIREG_PM1_CNT, 0) & + ACPI_PM1_SCI_EN)); + } +#endif printf("\n%s: tables", DEVNAME(sc)); SIMPLEQ_FOREACH(entry, &sc->sc_tables, q_next) { printf(" %.4s", entry->q_table); --- ./sys/dev/acpi/acpicpu.c.orig Wed Jul 21 19:24:01 2010 +++ ./sys/dev/acpi/acpicpu.c Wed May 4 20:13:47 2011 @@ -394,7 +394,11 @@ sc->sc_flags |= FLAGS_NOPCT; else if (sc->sc_pss_len > 0) { /* Notify BIOS we are handing p-states */ +#if 0 if (sc->sc_acpi->sc_fadt->pstate_cnt) +#else + if (sc->sc_acpi->sc_fadt->smi_cmd && sc->sc_acpi->sc_fadt->pstate_cnt) +#endif acpi_write_pmreg(sc->sc_acpi, ACPIREG_SMICMD, 0, sc->sc_acpi->sc_fadt->pstate_cnt); Later, -- Olivier Cherrier - Symacx.com mailto:o...@symacx.com