Date: Fri, 28 Jul 2000 15:12:59 +0200 (CEST) From: wilko@freebsd.org To: FreeBSD-gnats-submit@freebsd.org Subject: alpha/20248: DEFPA FDDI on alpha panics system Message-ID: <200007281312.PAA05912@freebie.demon.nl>
next in thread | raw e-mail | index | archive | help
>Number: 20248
>Category: alpha
>Synopsis: DEFPA FDDI on alpha panics system
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-alpha
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Jul 28 06:20:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator: Wilko Bulte
>Release: FreeBSD 4.1-R alpha
>Organization:
Private FreeBSD site - The Netherlands
>Environment:
4.1-R on a MiataGL-600au. System contains a DEC DEFPA FDDI PCI
adapter
>Description:
presence of 'device fpa' in the kernel produces a panic on
boot as follows:
isp0: interrupting at CIA irq 3
fpa0: <Digital DEFPA PCI FDDI Controller> port 0x8100-0x817f mem
0x80800000-0x8080ffff,0x80821000-0x8082107f irq 16 at device 9.0 on pci1
fatal kernel trap:
trap entry = 0x2 (memory management fault)
a0 = 0x80821014
a1 = 0x1
a2 = 0x0
pc = 0xfffffc0000369158
ra = 0xfffffc0000368e98
curproc = 0xfffffc000057e988
pid = 0, comm = swapper
ddbprinttrap from 0xfffffc0000369158
ddbprinttrap(0x80821014, 0x1, 0x0, 0x2)
panic: trap
panic
Stopped at Debugger+0x2c: ldq ra,0(sp) <0xfffffc00005e5900>
<ra=0xfffffc00004c3ca0,sp=0xfffffc00005e5900>
db> t
Debugger() at Debugger+0x2c
panic() at panic+0x100
trap() at trap+0x610
XentMM() at XentMM+0x20
pdq_initialize() at pdq_initialize+0x278
(null)() at 0x6
db>
and
fffffc00003688e0 T pdq_interrupt
fffffc0000368c20 T pdq_initialize
fffffc00003691c0 T pdq_ifinit
fffffc0000369300 T pdq_ifwatchdog
fffffc0000369380 T pdq_ifstart
fffffc0000369520 T pdq_os_receive_pdu
fffffc0000369620 T pdq_os_restart_transmitter
It seems something in pdq_initialize might be doing something wrong. At
least, it does on alpha. I tested with one DEFPA in a current i386 FreeBSD
box and the other one in the Miata running T64 4.0G. That works just fine.
>How-To-Repeat:
See above
>Fix:
Thanks to Andrew Gallatin for:
Index: pci/pci_compat.c
===================================================================
RCS file: /home/ncvs/src/sys/pci/pci_compat.c,v
retrieving revision 1.35
diff -u -r1.35 pci_compat.c
--- pci/pci_compat.c 2000/02/28 08:12:24 1.35
+++ pci/pci_compat.c 2000/07/25 15:03:00
@@ -96,7 +96,7 @@
rid = reg;
res = bus_alloc_resource(cfg->dev, SYS_RES_MEMORY, &rid,
- 0, ~0, 1, RF_ACTIVE);
+ 0, ~0, 1, RF_ACTIVE|PCI_RF_DENSE);
if (res) {
*pa = rman_get_start(res);
*va = (vm_offset_t) rman_get_virtual(res);
This solves the panic condition. It does not, however result in a working
DEFPA/FDDI link. Note that de fpa driver in -current (I think this is the
same as in 4.1) on i386 works just fine.
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200007281312.PAA05912>
