Re: Oops when removing snd-timer

Zwane Mwaikambo (zwane@holomorphy.com)
Mon, 18 Nov 2002 04:07:17 -0500 (EST)


On Mon, 18 Nov 2002, Taral wrote:

> I was unloading ALSA (modular) when I got this lovely oops:
> (linux-2.5.47)

Looks like you loaded ens137x.c and then that driver got unloaded leaving
the callback still valid, then the core timer code decided to walk off a
cliff using that pointer.

0xc0365322 is in snd_timer_free (sound/core/timer.c:676).
671 static int snd_timer_free(snd_timer_t *timer)
672 {
673 snd_assert(timer != NULL, return -ENXIO);
674 if (timer->private_free)
675 timer->private_free(timer);
676 snd_magic_kfree(timer);
677 return 0;
678 }

The problem seems to be a sort of chicken/egg case? We can't rely on
modules being around even with this inter dependency case.

Zwane

-- 
function.linuxpower.ca

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/