Date: Wed, 28 Apr 2010 12:28:33 +0100 From: Rui Paulo <rpaulo@freebsd.org> To: freebsd-mips@freebsd.org Subject: Re: [PATCH] Account RMI XLR interrupts Message-ID: <13B981BB-EDB1-4D39-A9CA-A1D4981E5732@freebsd.org> In-Reply-To: <BAAA25BC-6094-4B5B-9C83-A330933EBA51@freebsd.org> References: <BAAA25BC-6094-4B5B-9C83-A330933EBA51@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 20 Apr 2010, at 12:36, Rui Paulo wrote:
> Hi,
> The following patch accounts interrupts on the XLR and makes vmstat -i =
and systat work display useful data. I think the commented out atomic =
inc can go away, but I'm not sure.
>=20
> Here's an example:
>=20
> $ vmstat -i
> interrupt total rate
> int16: 56118 984
> int17: 214 3
> Total 56332 988
>=20
> int16 is the timer and int17 is the network interface (rge1).
>=20
> Index: intr_machdep.c
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> --- intr_machdep.c (revision 206791)
> +++ intr_machdep.c (working copy)
> @@ -157,28 +157,17 @@
> for (i =3D sizeof(eirr) * 8 - 1; i >=3D 0; i--) {
> if ((eirr & (1ULL << i)) =3D=3D 0)
> continue;
> ie =3D mips_intr_events[i];
> /* atomic_add_long(mih->cntp, 1); */
> + /* Don't account special IRQs */
> + switch (i) {
> + case IRQ_IPI:
> + case IRQ_MSGRING:
> + break;
> + default:
> + mips_intrcnt_inc(mips_intr_counters[i]);
> + }
>=20
> write_c0_eirr64(1ULL << i);
> pic_ack(i, 0);
>=20
Can I commit this?
Regards,
--
Rui Paulo
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?13B981BB-EDB1-4D39-A9CA-A1D4981E5732>
