snd_seq_delete_all_ports(client);
        snd_seq_queue_client_leave(client->number);
        snd_use_lock_sync(&client->use_lock);
-       snd_seq_queue_client_termination(client->number);
        if (client->pool)
                snd_seq_pool_delete(&client->pool);
        spin_lock_irq(&clients_lock);
 
 
 /*----------------------------------------------------------------*/
 
-/* notification that client has left the system -
- * stop the timer on all queues owned by this client
- */
-void snd_seq_queue_client_termination(int client)
-{
-       unsigned long flags;
-       int i;
-       struct snd_seq_queue *q;
-       bool matched;
-
-       for (i = 0; i < SNDRV_SEQ_MAX_QUEUES; i++) {
-               if ((q = queueptr(i)) == NULL)
-                       continue;
-               spin_lock_irqsave(&q->owner_lock, flags);
-               matched = (q->owner == client);
-               if (matched)
-                       q->klocked = 1;
-               spin_unlock_irqrestore(&q->owner_lock, flags);
-               if (matched) {
-                       if (q->timer->running)
-                               snd_seq_timer_stop(q->timer);
-                       snd_seq_timer_reset(q->timer);
-               }
-               queuefree(q);
-       }
-}
-
 /* final stage notification -
  * remove cells for no longer exist client (for non-owned queue)
  * or delete this queue (for owned queue)
 
 /* delete queue (destructor) */
 int snd_seq_queue_delete(int client, int queueid);
 
-/* notification that client has left the system */
-void snd_seq_queue_client_termination(int client);
-
 /* final stage */
 void snd_seq_queue_client_leave(int client);