drm/nouveau/mc: complain loudly if we can't call a interrupt handler
Subsystems (3)
PATCH 1/1 drm/nouveau/mc: complain loudly if we can't call a interrupt handler
I noticed that bsp, vp and ppp had no interrupt handler after investigating why 15% of my cpu time went to interrupts.
nouveau was silent about it, but it should be an error since we have no way of acking in that case.
Signed-off-by Maarten Lankhorst <[email protected]>
---
fwiw, the interrupt was 10, the exit interrupt after secret scrubber finishes.. I have absolutely no idea why, as it times out on wait before the engine initialization..
Maybe just ack it from the bsp/vp/ppp interrupt handler? Or should it be part of the base fuc class..
drivers/gpu/drm/nouveau/core/subdev/mc/base.c +10 -2
@@ -36,8 +36,16 @@ nouveau_mc_intr(struct nouveau_subdev *subdev)while (stat && map->stat) {if (stat & map->stat) { unit =nouveau_subdev (subdev, map->unit); -if (unit && unit->intr) - unit->intr (unit); +if (unit) { +if (unit->intr) + unit->intr (unit); +else if (printk_ratelimit ()) +nv_error (pmc, +"%s has no interrupt handler, ignoring interrupt %x\n" , + unit->name, intr & map->stat); + }else if (printk_ratelimit ()) +nv_error (pmc,"subdev %u does not exist for interrupt %x\n" , + map->unit, intr & map->stat); intr &= ~map->stat; } map++;