add ^T^Ti (interrupt summary) Reference: /n/atom/patch/applied/nixtti Date: Sat Mar 22 20:15:18 CET 2014 Signed-off-by: quanstro@quanstro.net --- /sys/src/nix/k10/trap.c Sat Mar 22 20:15:07 2014 +++ /sys/src/nix/k10/trap.c Sat Mar 22 20:15:07 2014 @@ -164,6 +164,22 @@ } void +interruptsummary(void) +{ + char vnam[11+1]; + int vno, af; + Vctl *v; + + for(vno=65; vno<256; vno++) + for(af = 0; af < sys->nmach; af++) + for(v=vctl[af][vno]; v; v=v->next){ + snprint(vnam, sizeof vnam, "%d.%d", vno, v->affinity); + print("%11s %11d %20llud %20llud %-*.*s %.*s\n", + vnam, v->irq, v->count, v->cycles, 8, 8, v->type, KNAMELEN, v->name); + } +} + +void trapinit(void) { /* --- /sys/src/nix/port/portfns.h Sat Mar 22 20:15:07 2014 +++ /sys/src/nix/port/portfns.h Sat Mar 22 20:15:07 2014 @@ -130,6 +130,7 @@ void ilock(Lock*); int incref(Ref*); void initimage(void); +void interruptsummary(void); int iprint(char*, ...); void isdir(Chan*); int iseve(void); --- /sys/src/nix/port/devcons.c Sat Mar 22 20:15:07 2014 +++ /sys/src/nix/port/devcons.c Sat Mar 22 20:15:07 2014 @@ -550,6 +550,9 @@ case 'k': killbig("^t ^t k"); return; + case 'i': + interruptsummary(); + return; case 'r': exit(0); return;