diff options
| -rw-r--r-- | sound/core/seq/seq_fifo.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/core/seq/seq_fifo.c b/sound/core/seq/seq_fifo.c index 33980d1c8037..01c4cfe30c9f 100644 --- a/sound/core/seq/seq_fifo.c +++ b/sound/core/seq/seq_fifo.c | |||
| @@ -267,6 +267,10 @@ int snd_seq_fifo_resize(struct snd_seq_fifo *f, int poolsize) | |||
| 267 | /* NOTE: overflow flag is not cleared */ | 267 | /* NOTE: overflow flag is not cleared */ |
| 268 | spin_unlock_irqrestore(&f->lock, flags); | 268 | spin_unlock_irqrestore(&f->lock, flags); |
| 269 | 269 | ||
| 270 | /* close the old pool and wait until all users are gone */ | ||
| 271 | snd_seq_pool_mark_closing(oldpool); | ||
| 272 | snd_use_lock_sync(&f->use_lock); | ||
| 273 | |||
| 270 | /* release cells in old pool */ | 274 | /* release cells in old pool */ |
| 271 | for (cell = oldhead; cell; cell = next) { | 275 | for (cell = oldhead; cell; cell = next) { |
| 272 | next = cell->next; | 276 | next = cell->next; |
