Subject: what's this machine check mean?
To: None <>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: port-alpha
Date: 04/15/2000 03:33:09
I wrote, about some machine checks,

> I don't (yet) know what routine that pc falls into; I'm currently
> copying the kernel in question to the 1.4 alpha box, but it's over a
> slow netlink, so it's taking a while.

This finished - yay, it actually finished in finite time!  I've now had
three machine checks, two at 0xfffffc000050f3c8 and one at

0xfffffc000050f3c8 is lca_mem_read_1+0x48 (+72)
0xfffffc000050f3e4 is lca_mem_read_1+0x64 (+100)

I don't know much alpha assembly, but here's where they fall in gdb's
disassembly of that code (reformatted for comprehensibility).

	ldah	gp,13(t12)
	lda	gp,30248(gp)
	subq	sp,0x20,sp
	stq	ra,0(sp)
	stq	s0,8(sp)
	stq	s1,16(sp)
	mov	a1,s0
	mov	a2,s1
	ldq	t12,-32728(gp)
	jsr	ra,(t12),0xfffffc0000510108 <lca_conf_write+40>
	ldah	gp,13(ra)
	lda	gp,30208(gp)
	blt	s0,0xfffffc000050f3d8 <lca_mem_read_1+88>
	addq	s0,s1,t0
	sll	t0,0x5,t1
	and	t0,0x3,t0
	ldl	v0,0(t1)
	s8addq	t0,0,t0
+72:	zapnot	v0,0xf,v0
	srl	v0,t0,v0
	and	v0,0xff,v0
	br	0xfffffc000050f3e4 <lca_mem_read_1+100>
+88:	addq	s0,s1,t0
	ldq_u	v0,0(t0)
	extbl	v0,t0,v0
+100:	ldq	ra,0(sp)
	ldq	s0,8(sp)
	ldq	s1,16(sp)
	addq	sp,0x20,sp
	ret	zero,(ra),0x1

It clearly means something that they're all in that function, two of
them at the same address even, but darned if I can tell what.  What's
this LCA thing?  It looks as though it's some kind of bus, but the
comments about "can have only one" make it sound like a semi-fake bus.
But on the other hand it seems to correspond to a real chip.

					der Mouse

		     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B