Unix Technical Forum

MPI driver causing vmware to crash on boot

This is a discussion on MPI driver causing vmware to crash on boot within the mailing.openbsd.tech forums, part of the OpenBSD category; --> Recent changes to the MPI driver are now causing vmware to crash on boot, and the virtual shuts down. ...


Go Back   Unix Technical Forum > Unix Operating Systems > OpenBSD > mailing.openbsd.tech

FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 02-18-2008, 08:43 AM
Jason Crawford
 
Posts: n/a
Default MPI driver causing vmware to crash on boot

Recent changes to the MPI driver are now causing vmware to crash on
boot, and the virtual shuts down. I haven't been able to get any debug
information because the virtual instantly shuts down, and I'm not sure
how to get it to just drop me to a ddb. However, I have found the
exact changes to mpi.c and mpireg.h that make the difference between
vmware booting properly and vmware crashing on boot. A working dmesg
of current sources with last working mpi.c and mpireg.h versions
follows, as well as a diff between the working mpi.c and mpireg.h and
the crashing mpi.c and mpireg.h files.

OpenBSD 3.9-current (GENERIC.RT) #6: Fri Jun 30 11:06:59 EDT 2006
jason@tweak.hcpnet.org:/usr/src/sys/...ile/GENERIC.RT
cpu0: Intel(R) Pentium(R) 4 CPU 3.20GHz ("GenuineIntel" 686-class) 3.20 GHz
cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,P GE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE, SSE2,SS,HTT,SSE3,DS-CPL
real mem = 267939840 (261660K)
avail mem = 237871104 (232296K)
using 3296 buffers containing 13500416 bytes (13184K) of memory
mainbus0 (root)
bios0 at mainbus0: AT/286+(6f) BIOS, date 04/21/04, BIOS32 rev. 0 @
0xfd880, SMBIOS rev. 2.31 @ 0xe4010 (45 entries)
bios0: VMware, Inc. VMware Virtual Platform
apm0 at bios0: Power Management spec V1.2
apm0: AC on, battery charge unknown
apm0: flags 30102 dobusy 0 doidle 1
pcibios0 at bios0: rev 2.1 @ 0xfd880/0x780
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdf30/176 (9 entries)
pcibios0: PCI Interrupt Router at 000:07:0 ("Intel 82371FB ISA" rev 0x00)
pcibios0: PCI bus #1 is the last bus
bios0: ROM list: 0xc0000/0x8000 0xc8000/0x1a00! 0xca000/0x1000
0xdc000/0x4000! 0xe4000/0x4000!
cpu0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "Intel 82443BX AGP" rev 0x01
ppb0 at pci0 dev 1 function 0 "Intel 82443BX AGP" rev 0x01
pci1 at ppb0 bus 1
pcib0 at pci0 dev 7 function 0 "Intel 82371AB PIIX4 ISA" rev 0x08
pciide0 at pci0 dev 7 function 1 "Intel 82371AB IDE" rev 0x01: DMA,
channel 0 configured to compatibility, channel 1 configured to
compatibility
pciide0: channel 0 ignored (disabled)
atapiscsi0 at pciide0 channel 1 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: <NECVMWar, VMware IDE CDR10, 1.00> SCSI0
5/cdrom removable
cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
piixpm0 at pci0 dev 7 function 3 "Intel 82371AB Power" rev 0x08: SMBus disabled
vga1 at pci0 dev 15 function 0 "VMware Virtual SVGA II" rev 0x00
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
mpi0 at pci0 dev 16 function 0 "Symbios Logic 53c1030" rev 0x01: irq 9
scsibus1 at mpi0: 16 targets
sd0 at scsibus1 targ 0 lun 0: <VMware,, VMware Virtual S, 1.0> SCSI2
0/direct fixed
sd0: 6144MB, 6144 cyl, 64 head, 32 sec, 512 bytes/sec, 12582912 sec total
mpi0: target 0 Sync at 160MHz width 16bit offset 127 QAS 1 DT 1 IU 1
pcn0 at pci0 dev 17 function 0 "AMD 79c970 PCnet-PCI" rev 0x10,
Am79c970A, rev 0: irq 10, address 00:0c:29:da:7a:ac
isa0 at pcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pmsi0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pmsi0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
npx0 at isa0 port 0xf0/16: using exception 16
pccom0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
pccom1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
biomask eb65 netmask ef65 ttymask ffe7
pctr: user-level cycle counter enabled
mpi0: xs cmd: 0x1b len: 0 error: 0x01 flags 0x1a8
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 6 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x0000000f
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x1a len: 255 error: 0x01 flags 0x828
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 6 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x00000013
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x5a len: 255 error: 0x01 flags 0x828
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 10 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x00000014
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
dkcsum: sd0 matches BIOS drive 0x80
root on sd0a
mpi0: xs cmd: 0x1b len: 0 error: 0x01 flags 0x188
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 6 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x00000018
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x1a len: 255 error: 0x01 flags 0x828
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 6 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x0000001c
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x5a len: 255 error: 0x01 flags 0x828
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 10 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x0000001d
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
rootdev=0x400 rrootdev=0xd00 rawdev=0xd02
mpi0: xs cmd: 0x1b len: 0 error: 0x01 flags 0x1a8
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 6 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x00000020
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x1a len: 255 error: 0x01 flags 0x828
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 6 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x00000024
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x5a len: 255 error: 0x01 flags 0x828
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 10 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x00000025
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x1b len: 0 error: 0x01 flags 0x188
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 6 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x00000028
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x1a len: 255 error: 0x01 flags 0x828
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 6 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x0000002c
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2
mpi0: xs cmd: 0x5a len: 255 error: 0x01 flags 0x828
mpi0: target_id: 0 bus: 0 msg_length: 8 function: 0x00
mpi0: cdb_length: 10 sense_buf_length: 0 msg_flags: 0x00
mpi0: msg_context: 0x0000002d
mpi0: scsi_status: 0x02 scsi_state: 0x01 ioc_status: 0x0000
mpi0: ioc_loginfo: 0x00000000
mpi0: transfer_count: 0
mpi0: sense_count: 18
mpi0: response_info: 0x00000000
mpi0: tag: 0x0000
mpi0: xs error: 0x01 xs status: 2

Index: mpi.c
================================================== =================
RCS file: /cvs/src/sys/dev/ic/mpi.c,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- mpi.c 19 Jun 2006 21:06:22 -0000 1.48
+++ mpi.c 29 Jun 2006 08:35:08 -0000 1.49
@@ -1,4 +1,4 @@
-/* $OpenBSD: mpi.c,v 1.48 2006/06/19 21:06:22 miod Exp $ */
+/* $OpenBSD: mpi.c,v 1.49 2006/06/29 08:35:08 dlg Exp $ */

/*
* Copyright (c) 2005, 2006 David Gwynne <dlg@openbsd.org>
@@ -976,13 +976,13 @@

switch (xs->flags & (SCSI_DATA_IN | SCSI_DATA_OUT)) {
case SCSI_DATA_IN:
- io->control = htole32(MPI_SCSIIO_DATA_DIR_READ);
+ io->direction = MPI_SCSIIO_DIR_READ;
break;
case SCSI_DATA_OUT:
- io->control = htole32(MPI_SCSIIO_DATA_DIR_WRITE);
+ io->direction = MPI_SCSIIO_DIR_WRITE;
break;
default:
- io->control = htole32(MPI_SCSIIO_DATA_DIR_NONE);
+ io->direction = MPI_SCSIIO_DIR_NONE;
break;
}

Index: mpireg.h
================================================== =================
RCS file: /cvs/src/sys/dev/ic/mpireg.h,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- mpireg.h 29 Jun 2006 08:23:26 -0000 1.18
+++ mpireg.h 29 Jun 2006 08:35:08 -0000 1.19
@@ -1,4 +1,4 @@
-/* $OpenBSD: mpireg.h,v 1.18 2006/06/29 08:23:26 dlg Exp $ */
+/* $OpenBSD: mpireg.h,v 1.19 2006/06/29 08:35:08 dlg Exp $ */

/*
* Copyright (c) 2005 David Gwynne <dlg@openbsd.org>
@@ -619,7 +619,7 @@

u_int8_t cdb_length;
u_int8_t sense_buf_len;
- u_int8_t reserved;
+ u_int8_t reserved1;
u_int8_t msg_flags;
#define MPI_SCSIIO_EEDP 0xf0
#define MPI_SCSIIO_CMD_DATA_DIR (1<<2)
@@ -632,19 +632,19 @@

u_int16_t lun[4];

- u_int32_t control;
-#define MPI_SCSIIO_ADDITIONAL_CDB_LEN (0xf<<26)
-#define MPI_SCSIIO_DATA_DIR (0x3<<24)
-#define MPI_SCSIIO_DATA_DIR_NONE (0x0<<24)
-#define MPI_SCSIIO_DATA_DIR_WRITE (0x1<<24)
-#define MPI_SCSIIO_DATA_DIR_READ (0x2<<24)
-#define MPI_SCSIIO_TASK_ATTR (0x7<<8)
-#define MPI_SCSIIO_TASK_ATTR_SIMPLE_Q (0x0<<8)
-#define MPI_SCSIIO_TASK_ATTR_HEAD_OF_Q (0x1<<8)
-#define MPI_SCSIIO_TASK_ATTR_ORDERED_Q (0x2<<8)
-#define MPI_SCSIIO_TASK_ATTR_ACA_Q (0x4<<8)
-#define MPI_SCSIIO_TASK_ATTR_UNTAGGED (0x5<<8)
-#define MPI_SCSIIO_TASK_ATTR_NO_DISCONNECT (0x7<<8)
+ u_int8_t reserved2;
+ u_int8_t tagging;
+#define MPI_SCSIIO_ATTR_SIMPLE_Q (0x0)
+#define MPI_SCSIIO_ATTR_HEAD_OF_Q (0x1)
+#define MPI_SCSIIO_ATTR_ORDERED_Q (0x2)
+#define MPI_SCSIIO_ATTR_ACA_Q (0x4)
+#define MPI_SCSIIO_ATTR_UNTAGGED (0x5)
+#define MPI_SCSIIO_ATTR_NO_DISCONNECT (0x7)
+ u_int8_t direction;
+#define MPI_SCSIIO_DIR_NONE (0x0)
+#define MPI_SCSIIO_DIR_WRITE (0x1)
+#define MPI_SCSIIO_DIR_READ (0x2)
+ u_int8_t extra_cdb_len;

#define MPI_CDB_LEN 16
u_int8_t cdb[MPI_CDB_LEN];

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


All times are GMT. The time now is 09:02 AM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0
www.UnixAdminTalk.com