|
@@ -1838,6 +1838,9 @@ static int snd_seq_ioctl_set_client_pool(struct snd_seq_client *client,
|
|
|
(! snd_seq_write_pool_allocated(client) ||
|
|
|
info->output_pool != client->pool->size)) {
|
|
|
if (snd_seq_write_pool_allocated(client)) {
|
|
|
+ /* is the pool in use? */
|
|
|
+ if (atomic_read(&client->pool->counter))
|
|
|
+ return -EBUSY;
|
|
|
/* remove all existing cells */
|
|
|
snd_seq_pool_mark_closing(client->pool);
|
|
|
snd_seq_queue_client_leave_cells(client->number);
|