diff options
| author | Mike Lockwood <lockwood@google.com> | 2015-01-29 13:37:06 -0800 |
|---|---|---|
| committer | Moyster <oysterized@gmail.com> | 2018-05-16 15:12:14 +0200 |
| commit | 01b353c0c298e4e4117c5a8375241bd19cf83357 (patch) | |
| tree | 55e02b0812ec5b5f2fcc4d5c74033d059e9ecc44 /drivers/usb | |
| parent | fe12ea1c9111350b576fce11a7feed49e3ebc4e4 (diff) | |
USB: gadget: midi: Fix deadlock unbinding driver while it is in use
Using snd_card_free_when_closed rather than snd_card_free in f_midi_unbind
makes it safe to disable the driver while a userspace client has the
ALSA device open.
Change-Id: Ibc40c01e7b1ce90fc61d3ea654b4816fadfc7ffd
Signed-off-by: Mike Lockwood <lockwood@google.com>
Diffstat (limited to 'drivers/usb')
| -rw-r--r-- | drivers/usb/gadget/f_midi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/gadget/f_midi.c b/drivers/usb/gadget/f_midi.c index 263e721c2..b91f51977 100644 --- a/drivers/usb/gadget/f_midi.c +++ b/drivers/usb/gadget/f_midi.c @@ -409,7 +409,7 @@ static void f_midi_unbind(struct usb_configuration *c, struct usb_function *f) card = midi->card; midi->card = NULL; if (card) - snd_card_free(card); + snd_card_free_when_closed(card); kfree(midi->id); midi->id = NULL; |
