Date: Sun, 31 May 2009 02:37:01 +0200 From: Juergen Lock <nox@jelal.kn-bremen.de> To: Sebastian Herbszt <herbszt@gmx.de> Cc: jan.kiszka@siemens.com, freebsd-emulation@FreeBSD.org, qemu-devel@nongnu.org Subject: Re: Thanx for the kqemu patches; some notes about NetBSD/OpenBSD guests Message-ID: <20090531003701.GA13927@triton.kn-bremen.de> In-Reply-To: <799A5F31E2B2415DA53F558FE3E2ACE7@FSCPC> References: <20090530205152.GA7702@triton.kn-bremen.de> <799A5F31E2B2415DA53F558FE3E2ACE7@FSCPC>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, May 31, 2009 at 01:06:31AM +0200, Sebastian Herbszt wrote: > Juergen Lock wrote: > > 2. NetBSD doesn't seem to particularly like qemu's acpi tables, it > > apparenly doesn't find a pci bus and anything on it in that case > > (like a nic our audio card; `pcictl pci0 list' says Device not configured.) > > > > 3. When I disable acpi either via the boot menu or via -no-acpi it still > > has trouble assigning pci irqs correctly (like, uses irq 12 instead of 11 > > for the nic) - this seems to have something to do with the emulated > > io-apic that it still picks up in that case - if I disable that by > > building a new bios that has this patch reverted, > > pc-bios/bios-pq/0003_kvm-bios-generate-mptable-unconditionally.patch > > the irqs at least get assigned correctly. (Maybe the bios should only > > pass an mptable for a single cpu when there also is acpi?) > > With "-no-acpi" there is no PIIX4 PM added to the bus. If i don't mistake the > mp and acpi tables aren't affected by this. > > The mptable doesn't contain a pci bus entry (just isa). The linux kernel does > complain if booted with "acpi=off"; maybe NetBSD is more picky. > Aha so maybe NetBSD is expectig to see the pci bus listed in acpi then... > > Oh, if anyone wants dmesg.s of the various with/without acpi/io-apic > > combinations I can post those too, the patched bios I just put at: > > http://people.freebsd.org/~nox/qemu/pc-bios-0.10.5-no-default-mptable/bios.bin > > I would like to see the output. > OK I'll append below. > > (I had to end up building it on a Linux guest, our assembler said things > > like > > rombios32start.S:56: Error: `0(%ebx)' is not a valid 16 bit base/index expression > > .) > > What's your tool chain (gcc, binutils,...) ? Whatever is in FreeBSD 7.2-stable base, lets see... zsh triton% as --version GNU assembler 2.15 [FreeBSD] 2004-05-23 zsh triton% ld --version GNU ld version 2.15 [FreeBSD] 2004-05-23 Heh doesn't look particularly new indeed :) Thanx, Juergen 1. acpi + mptable: (upstream bios; notice no pci0, piixide0, pcn0, and auich0) --------snip------------ Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 5.0 (GENERIC) #0: Sun Apr 26 18:50:08 UTC 2009 builds@b6.netbsd.org:/home/builds/ab/netbsd-5-0-RELEASE/i386/200904260229Z-obj/home/builds/ab/netbsd-5-0-RELEASE/src/sys/arch/i386/compile/GENERIC total memory = 1023 MB avail memory = 994 MB timecounter: Timecounters tick every 10.000 msec timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100 Generic PC mainbus0 (root) cpu0 at mainbus0 apid 0: Intel 686-class, id 0x633 ioapic0 at mainbus0 apid 1: pa 0xfec00000, version 11, 24 pins acpi0 at mainbus0: Intel ACPICA 20080321 acpi0: X/RSDT: OemId <QEMU ,QEMURSDT,00000001>, AslId <QEMU,00000001> acpi0: SCI interrupting at int 9 acpi0: fixed-feature power button present timecounter: Timecounter "ACPI-Safe" frequency 3579545 Hz quality 900 ACPI-Safe 24-bit timer pckbc1 at acpi0 (KBD, PNP0303): kbd port pckbc1: io 0x60,0x64 irq 1 pckbc2 at acpi0 (MOU, PNP0F13): aux port pckbc2: irq 12 FDC0 (PNP0700) at acpi0 not configured LPT (PNP0400) at acpi0 not configured COM1 (PNP0501) at acpi0 not configured apm0 at acpi0: Power Management spec V1.2 pckbd0 at pckbc1 (kbd slot) pckbc1: using irq 1 for kbd slot wskbd0 at pckbd0: console keyboard pms0 at pckbc1 (aux slot) pckbc1: using irq 12 for aux slot wsmouse0 at pms0 mux 0 isa0 at mainbus0 lpt0 at isa0 port 0x378-0x37b irq 7 com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo attimer0 at isa0 port 0x40-0x43: AT Timer wdc0 at isa0 port 0x1f0-0x1f7 irq 14 atabus0 at wdc0 channel 0 wdc1 at isa0 port 0x170-0x177 irq 15 atabus1 at wdc1 channel 0 vga0 at isa0 port 0x3b0-0x3df iomem 0xa0000-0xbffff wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation), using wskbd0 wsmux1: connecting to wsdisplay0 pcppi0 at isa0 port 0x61 midi0 at pcppi0: PC speaker (CPU-intensive output) sysbeep0 at pcppi0 isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support npx0 at isa0 port 0xf0-0xff npx0: reported by CPUID; using exception 16 fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2 attimer0: attached to pcppi0 isapnp0: no ISA Plug 'n Play devices found timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0 wd0 at atabus0 drive 0: <QEMU HARDDISK> wd0: drive supports 16-sector PIO transfers, LBA48 addressing wd0: 10240 MB, 20805 cyl, 16 head, 63 sec, 512 bytes/sect x 20971520 sectors atapibus0 at atabus1: 2 targets cd0 at atapibus0 drive 0: <QEMU DVD-ROM, QM00003, 0.10.5> cdrom removable Kernelized RAIDframe activated pad0: outputs: 44100Hz, 16-bit, stereo audio0 at pad0: half duplex boot device: wd0 root on wd0a dumps on wd0b root file system type: ffs wsdisplay0: screen 1 added (80x25, vt100 emulation) wsdisplay0: screen 2 added (80x25, vt100 emulation) wsdisplay0: screen 3 added (80x25, vt100 emulation) wsdisplay0: screen 4 added (80x25, vt100 emulation) --------snip------------ 2. -no-acpi + mptable (notice wrong pcn0 irq, and `ioapic0 pin 12: can't share type 3 with 2' as a result): --------snip------------ Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 5.0 (GENERIC) #0: Sun Apr 26 18:50:08 UTC 2009 builds@b6.netbsd.org:/home/builds/ab/netbsd-5-0-RELEASE/i386/200904260229Z-obj/home/builds/ab/netbsd-5-0-RELEASE/src/sys/arch/i386/compile/GENERIC total memory = 1023 MB avail memory = 994 MB timecounter: Timecounters tick every 10.000 msec timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100 Generic PC mainbus0 (root) ACPI Error (tbxfroot-0308): A valid RSDP was not found [20080321] ACPI: unable to initialize ACPI tables: AE_NOT_FOUND mainbus0: Intel MP Specification (Version 1.4) (QEMUCPU 0.1 ) cpu0 at mainbus0 apid 0: Intel 686-class, id 0x633 mpbios: bus 0 is type ISA ioapic0 at mainbus0 apid 1: pa 0xfec00000, version 11, 24 pins pci0 at mainbus0 bus 0: configuration mode 1 pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok pchb0 at pci0 dev 0 function 0 pchb0: vendor 0x8086 product 0x1237 (rev. 0x02) pcib0 at pci0 dev 1 function 0 pcib0: vendor 0x8086 product 0x7000 (rev. 0x00) piixide0 at pci0 dev 1 function 1 piixide0: Intel 82371SB IDE Interface (PIIX3) (rev. 0x00) piixide0: bus-master DMA support present piixide0: primary channel wired to compatibility mode piixide0: primary channel interrupting at ioapic0 pin 14 atabus0 at piixide0 channel 0 piixide0: secondary channel wired to compatibility mode piixide0: secondary channel interrupting at ioapic0 pin 15 atabus1 at piixide0 channel 1 vga1 at pci0 dev 2 function 0: vendor 0x1013 product 0x00b8 (rev. 0x00) wsdisplay0 at vga1 kbdmux 1: console (80x25, vt100 emulation) wsmux1: connecting to wsdisplay0 drm at vga1 not configured pcn0 at pci0 dev 3 function 0: AMD PCnet-PCI Ethernet pcn0: Am79c970A PCnet-PCI II rev 0, Ethernet address 52:54:00:12:34:56 pcn0: interrupting at ioapic0 pin 12 pcn0: 10base5, 10base5-FDX, 10baseT, 10baseT-FDX, auto, auto-FDX auich0 at pci0 dev 4 function 0: i82801AA (ICH) AC-97 Audio auich0: interrupting at ioapic0 pin 9 auich0: ac97: SigmaTel STAC9700 codec; no 3D stereo auich0: ac97: ext id 809<AC97_23,VRM,VRA> vendor 0x1af4 product 0x1002 (RAM memory) at pci0 dev 5 function 0 not configured isa0 at pcib0 lpt0 at isa0 port 0x378-0x37b irq 7 com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo pckbc0 at isa0 port 0x60-0x64 pckbd0 at pckbc0 (kbd slot) pckbc0: using irq 1 for kbd slot wskbd0 at pckbd0: console keyboard, using wsdisplay0 pms0 at pckbc0 (aux slot) intr_establish: pic ioapic0 pin 12: can't share type 3 with 2 pckbc0: unable to establish interrupt for aux slot wsmouse0 at pms0 mux 0 attimer0 at isa0 port 0x40-0x43: AT Timer pcppi0 at isa0 port 0x61 midi0 at pcppi0: PC speaker (CPU-intensive output) sysbeep0 at pcppi0 isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support npx0 at isa0 port 0xf0-0xff npx0: reported by CPUID; using exception 16 fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2 attimer0: attached to pcppi0 isapnp0: no ISA Plug 'n Play devices found timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0 auich0: measured ac97 link rate at 45801 Hz, will use 48000 Hz audio0 at auich0: full duplex, mmap, independent wd0 at atabus0 drive 0: <QEMU HARDDISK> wd0: drive supports 16-sector PIO transfers, LBA48 addressing wd0: 10240 MB, 20805 cyl, 16 head, 63 sec, 512 bytes/sect x 20971520 sectors wd0: 32-bit data port wd0(piixide0:0:0): using PIO mode 0 atapibus0 at atabus1: 2 targets cd0 at atapibus0 drive 0: <QEMU DVD-ROM, QM00003, 0.10.5> cdrom removable cd0: 32-bit data port cd0(piixide0:1:0): using PIO mode 3 Kernelized RAIDframe activated pad0: outputs: 44100Hz, 16-bit, stereo audio1 at pad0: half duplex boot device: wd0 root on wd0a dumps on wd0b root file system type: ffs wsdisplay0: screen 1 added (80x25, vt100 emulation) wsdisplay0: screen 2 added (80x25, vt100 emulation) wsdisplay0: screen 3 added (80x25, vt100 emulation) wsdisplay0: screen 4 added (80x25, vt100 emulation) --------snip------------ 3. -no-acpi + no mptable: (patched bios; only this combination works) --------snip------------ Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 5.0 (GENERIC) #0: Sun Apr 26 18:50:08 UTC 2009 builds@b6.netbsd.org:/home/builds/ab/netbsd-5-0-RELEASE/i386/200904260229Z-obj/home/builds/ab/netbsd-5-0-RELEASE/src/sys/arch/i386/compile/GENERIC total memory = 1023 MB avail memory = 994 MB timecounter: Timecounters tick every 10.000 msec timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100 Generic PC mainbus0 (root) ACPI Error (tbxfroot-0308): A valid RSDP was not found [20080321] ACPI: unable to initialize ACPI tables: AE_NOT_FOUND cpu0 at mainbus0: Intel 686-class, id 0x633 pci0 at mainbus0 bus 0: configuration mode 1 pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok pchb0 at pci0 dev 0 function 0 pchb0: vendor 0x8086 product 0x1237 (rev. 0x02) pcib0 at pci0 dev 1 function 0 pcib0: vendor 0x8086 product 0x7000 (rev. 0x00) piixide0 at pci0 dev 1 function 1 piixide0: Intel 82371SB IDE Interface (PIIX3) (rev. 0x00) piixide0: bus-master DMA support present piixide0: primary channel wired to compatibility mode piixide0: primary channel interrupting at irq 14 atabus0 at piixide0 channel 0 piixide0: secondary channel wired to compatibility mode piixide0: secondary channel interrupting at irq 15 atabus1 at piixide0 channel 1 vga1 at pci0 dev 2 function 0: vendor 0x1013 product 0x00b8 (rev. 0x00) wsdisplay0 at vga1 kbdmux 1: console (80x25, vt100 emulation) wsmux1: connecting to wsdisplay0 drm at vga1 not configured pcn0 at pci0 dev 3 function 0: AMD PCnet-PCI Ethernet pcn0: Am79c970A PCnet-PCI II rev 0, Ethernet address 52:54:00:12:34:56 pcn0: interrupting at irq 11 pcn0: 10base5, 10base5-FDX, 10baseT, 10baseT-FDX, auto, auto-FDX auich0 at pci0 dev 4 function 0: i82801AA (ICH) AC-97 Audio auich0: interrupting at irq 9 auich0: ac97: SigmaTel STAC9700 codec; no 3D stereo auich0: ac97: ext id 809<AC97_23,VRM,VRA> vendor 0x1af4 product 0x1002 (RAM memory) at pci0 dev 5 function 0 not configured isa0 at pcib0 lpt0 at isa0 port 0x378-0x37b irq 7 com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo pckbc0 at isa0 port 0x60-0x64 pckbd0 at pckbc0 (kbd slot) pckbc0: using irq 1 for kbd slot wskbd0 at pckbd0: console keyboard, using wsdisplay0 pms0 at pckbc0 (aux slot) pckbc0: using irq 12 for aux slot wsmouse0 at pms0 mux 0 attimer0 at isa0 port 0x40-0x43: AT Timer pcppi0 at isa0 port 0x61 midi0 at pcppi0: PC speaker (CPU-intensive output) sysbeep0 at pcppi0 isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support npx0 at isa0 port 0xf0-0xff npx0: reported by CPUID; using exception 16 fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2 attimer0: attached to pcppi0 isapnp0: no ISA Plug 'n Play devices found timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0 auich0: measured ac97 link rate at 46040 Hz, will use 48000 Hz audio0 at auich0: full duplex, mmap, independent wd0 at atabus0 drive 0: <QEMU HARDDISK> wd0: drive supports 16-sector PIO transfers, LBA48 addressing wd0: 10240 MB, 20805 cyl, 16 head, 63 sec, 512 bytes/sect x 20971520 sectors wd0: 32-bit data port wd0(piixide0:0:0): using PIO mode 0 atapibus0 at atabus1: 2 targets cd0 at atapibus0 drive 0: <QEMU DVD-ROM, QM00003, 0.10.5> cdrom removable cd0: 32-bit data port cd0(piixide0:1:0): using PIO mode 3 Kernelized RAIDframe activated pad0: outputs: 44100Hz, 16-bit, stereo audio1 at pad0: half duplex boot device: wd0 root on wd0a dumps on wd0b root file system type: ffs wsdisplay0: screen 1 added (80x25, vt100 emulation) wsdisplay0: screen 2 added (80x25, vt100 emulation) wsdisplay0: screen 3 added (80x25, vt100 emulation) wsdisplay0: screen 4 added (80x25, vt100 emulation) --------snip------------ 4. and for completeness sake, acpi + no mptable: (patched bios; again no pci devices) --------snip------------ Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 5.0 (GENERIC) #0: Sun Apr 26 18:50:08 UTC 2009 builds@b6.netbsd.org:/home/builds/ab/netbsd-5-0-RELEASE/i386/200904260229Z-obj/home/builds/ab/netbsd-5-0-RELEASE/src/sys/arch/i386/compile/GENERIC total memory = 1023 MB avail memory = 994 MB timecounter: Timecounters tick every 10.000 msec timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100 Generic PC mainbus0 (root) cpu0 at mainbus0 apid 0: Intel 686-class, id 0x633 ioapic0 at mainbus0 apid 1: pa 0xfec00000, version 11, 24 pins acpi0 at mainbus0: Intel ACPICA 20080321 acpi0: X/RSDT: OemId <QEMU ,QEMURSDT,00000001>, AslId <QEMU,00000001> acpi0: SCI interrupting at int 9 acpi0: fixed-feature power button present timecounter: Timecounter "ACPI-Safe" frequency 3579545 Hz quality 900 ACPI-Safe 24-bit timer pckbc1 at acpi0 (KBD, PNP0303): kbd port pckbc1: io 0x60,0x64 irq 1 pckbc2 at acpi0 (MOU, PNP0F13): aux port pckbc2: irq 12 FDC0 (PNP0700) at acpi0 not configured LPT (PNP0400) at acpi0 not configured COM1 (PNP0501) at acpi0 not configured apm0 at acpi0: Power Management spec V1.2 pckbd0 at pckbc1 (kbd slot) pckbc1: using irq 1 for kbd slot wskbd0 at pckbd0: console keyboard pms0 at pckbc1 (aux slot) pckbc1: using irq 12 for aux slot wsmouse0 at pms0 mux 0 isa0 at mainbus0 lpt0 at isa0 port 0x378-0x37b irq 7 com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo attimer0 at isa0 port 0x40-0x43: AT Timer wdc0 at isa0 port 0x1f0-0x1f7 irq 14 atabus0 at wdc0 channel 0 wdc1 at isa0 port 0x170-0x177 irq 15 atabus1 at wdc1 channel 0 vga0 at isa0 port 0x3b0-0x3df iomem 0xa0000-0xbffff wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation), using wskbd0 wsmux1: connecting to wsdisplay0 pcppi0 at isa0 port 0x61 midi0 at pcppi0: PC speaker (CPU-intensive output) sysbeep0 at pcppi0 isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support npx0 at isa0 port 0xf0-0xff npx0: reported by CPUID; using exception 16 fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2 attimer0: attached to pcppi0 isapnp0: no ISA Plug 'n Play devices found timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0 wd0 at atabus0 drive 0: <QEMU HARDDISK> wd0: drive supports 16-sector PIO transfers, LBA48 addressing wd0: 10240 MB, 20805 cyl, 16 head, 63 sec, 512 bytes/sect x 20971520 sectors atapibus0 at atabus1: 2 targets cd0 at atapibus0 drive 0: <QEMU DVD-ROM, QM00003, 0.10.5> cdrom removable Kernelized RAIDframe activated pad0: outputs: 44100Hz, 16-bit, stereo audio0 at pad0: half duplex boot device: wd0 root on wd0a dumps on wd0b root file system type: ffs wsdisplay0: screen 1 added (80x25, vt100 emulation) wsdisplay0: screen 2 added (80x25, vt100 emulation) wsdisplay0: screen 3 added (80x25, vt100 emulation) wsdisplay0: screen 4 added (80x25, vt100 emulation) --------snip------------
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090531003701.GA13927>