![](https://secure.gravatar.com/avatar/a7c9a4773543c649adc71c95805d2cbf.jpg?s=120&d=mm&r=g)
2 Feb
2015
2 Feb
'15
2:31 p.m.
On 02/02/2015 11:24 AM, Takashi Iwai wrote:
diff --git a/sound/core/init.c b/sound/core/init.c index 074875d68c15..2f730efe97b6 100644 --- a/sound/core/init.c +++ b/sound/core/init.c @@ -157,6 +157,25 @@ static int get_slot_from_bitmask(int mask, int (*check)(struct module *, int), return mask; /* unchanged */ }
+static void default_release(struct device *dev) +{ +}
A empty release callback is pretty much always wrong and typically causes use-after-free bugs. It might be correct in this case, but there should at least be a comment explaining why it is correct. And on the long run things should probably be re-factored to do all memory freeing in a subdevice specific release function.
- Lars