diff options
| -rw-r--r-- | sound/core/seq/seq_clientmgr.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c index 04d4db44fae5..d41ce3ed62ca 100644 --- a/sound/core/seq/seq_clientmgr.c +++ b/sound/core/seq/seq_clientmgr.c | |||
| @@ -1838,6 +1838,9 @@ static int snd_seq_ioctl_set_client_pool(struct snd_seq_client *client, | |||
| 1838 | (! snd_seq_write_pool_allocated(client) || | 1838 | (! snd_seq_write_pool_allocated(client) || |
| 1839 | info->output_pool != client->pool->size)) { | 1839 | info->output_pool != client->pool->size)) { |
| 1840 | if (snd_seq_write_pool_allocated(client)) { | 1840 | if (snd_seq_write_pool_allocated(client)) { |
| 1841 | /* is the pool in use? */ | ||
| 1842 | if (atomic_read(&client->pool->counter)) | ||
| 1843 | return -EBUSY; | ||
| 1841 | /* remove all existing cells */ | 1844 | /* remove all existing cells */ |
| 1842 | snd_seq_pool_mark_closing(client->pool); | 1845 | snd_seq_pool_mark_closing(client->pool); |
| 1843 | snd_seq_queue_client_leave_cells(client->number); | 1846 | snd_seq_queue_client_leave_cells(client->number); |
