* [PATCH] sound/core/seq: remove useless function
@ 2020-11-03 22:33 Yu Hao
2020-11-04 8:16 ` Takashi Iwai
0 siblings, 1 reply; 3+ messages in thread
From: Yu Hao @ 2020-11-03 22:33 UTC (permalink / raw)
To: perex, tiwai, alsa-devel; +Cc: yuhaobehappy, linux-kernel
The function snd_seq_queue_client_termination() is only called from
the function seq_free_client1(). The function seq_free_client1() calls
the function snd_seq_queue_client_leave() and the function
snd_seq_queue_client_termination() together. Because the function
snd_seq_queue_client_leave() does all things, so the function
snd_seq_queue_client_termination() is a useless function.
Signed-off-by: Yu Hao <yuhaobehappy@gmail.com>
---
sound/core/seq/seq_clientmgr.c | 1 -
sound/core/seq/seq_queue.c | 27 ---------------------------
sound/core/seq/seq_queue.h | 3 ---
3 files changed, 31 deletions(-)
diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c
index cc93157fa950..f9f2fea58b32 100644
--- a/sound/core/seq/seq_clientmgr.c
+++ b/sound/core/seq/seq_clientmgr.c
@@ -279,7 +279,6 @@ static int seq_free_client1(struct snd_seq_client *client)
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);
diff --git a/sound/core/seq/seq_queue.c b/sound/core/seq/seq_queue.c
index 71a6ea62c3be..13cfc2d47fa7 100644
--- a/sound/core/seq/seq_queue.c
+++ b/sound/core/seq/seq_queue.c
@@ -537,33 +537,6 @@ int snd_seq_queue_is_used(int queueid, int client)
/*----------------------------------------------------------------*/
-/* 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)
diff --git a/sound/core/seq/seq_queue.h b/sound/core/seq/seq_queue.h
index 9254c8dbe5e3..1c3a8d3254d9 100644
--- a/sound/core/seq/seq_queue.h
+++ b/sound/core/seq/seq_queue.h
@@ -59,9 +59,6 @@ struct snd_seq_queue *snd_seq_queue_alloc(int client, int locked, unsigned int f
/* 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);
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] sound/core/seq: remove useless function
2020-11-03 22:33 [PATCH] sound/core/seq: remove useless function Yu Hao
@ 2020-11-04 8:16 ` Takashi Iwai
2020-11-04 16:15 ` Yu Hao
0 siblings, 1 reply; 3+ messages in thread
From: Takashi Iwai @ 2020-11-04 8:16 UTC (permalink / raw)
To: Yu Hao; +Cc: perex, tiwai, alsa-devel, linux-kernel
On Tue, 03 Nov 2020 23:33:35 +0100,
Yu Hao wrote:
>
> The function snd_seq_queue_client_termination() is only called from
> the function seq_free_client1(). The function seq_free_client1() calls
> the function snd_seq_queue_client_leave() and the function
> snd_seq_queue_client_termination() together. Because the function
> snd_seq_queue_client_leave() does all things, so the function
> snd_seq_queue_client_termination() is a useless function.
How poetic, rhymes awfully well :)
> Signed-off-by: Yu Hao <yuhaobehappy@gmail.com>
Applied now. Thanks!
Takashi
> sound/core/seq/seq_clientmgr.c | 1 -
> sound/core/seq/seq_queue.c | 27 ---------------------------
> sound/core/seq/seq_queue.h | 3 ---
> 3 files changed, 31 deletions(-)
>
> diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c
> index cc93157fa950..f9f2fea58b32 100644
> --- a/sound/core/seq/seq_clientmgr.c
> +++ b/sound/core/seq/seq_clientmgr.c
> @@ -279,7 +279,6 @@ static int seq_free_client1(struct snd_seq_client *client)
> 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);
> diff --git a/sound/core/seq/seq_queue.c b/sound/core/seq/seq_queue.c
> index 71a6ea62c3be..13cfc2d47fa7 100644
> --- a/sound/core/seq/seq_queue.c
> +++ b/sound/core/seq/seq_queue.c
> @@ -537,33 +537,6 @@ int snd_seq_queue_is_used(int queueid, int client)
>
> /*----------------------------------------------------------------*/
>
> -/* 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)
> diff --git a/sound/core/seq/seq_queue.h b/sound/core/seq/seq_queue.h
> index 9254c8dbe5e3..1c3a8d3254d9 100644
> --- a/sound/core/seq/seq_queue.h
> +++ b/sound/core/seq/seq_queue.h
> @@ -59,9 +59,6 @@ struct snd_seq_queue *snd_seq_queue_alloc(int client, int locked, unsigned int f
> /* 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);
>
> --
> 2.17.1
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] sound/core/seq: remove useless function
2020-11-04 8:16 ` Takashi Iwai
@ 2020-11-04 16:15 ` Yu Hao
0 siblings, 0 replies; 3+ messages in thread
From: Yu Hao @ 2020-11-04 16:15 UTC (permalink / raw)
To: Takashi Iwai; +Cc: perex, tiwai, alsa-devel, linux-kernel
Thanks!
On Wed, Nov 4, 2020 at 12:16 AM Takashi Iwai <tiwai@suse.de> wrote:
>
> On Tue, 03 Nov 2020 23:33:35 +0100,
> Yu Hao wrote:
> >
> > The function snd_seq_queue_client_termination() is only called from
> > the function seq_free_client1(). The function seq_free_client1() calls
> > the function snd_seq_queue_client_leave() and the function
> > snd_seq_queue_client_termination() together. Because the function
> > snd_seq_queue_client_leave() does all things, so the function
> > snd_seq_queue_client_termination() is a useless function.
>
> How poetic, rhymes awfully well :)
>
> > Signed-off-by: Yu Hao <yuhaobehappy@gmail.com>
>
> Applied now. Thanks!
>
>
> Takashi
>
> > sound/core/seq/seq_clientmgr.c | 1 -
> > sound/core/seq/seq_queue.c | 27 ---------------------------
> > sound/core/seq/seq_queue.h | 3 ---
> > 3 files changed, 31 deletions(-)
> >
> > diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c
> > index cc93157fa950..f9f2fea58b32 100644
> > --- a/sound/core/seq/seq_clientmgr.c
> > +++ b/sound/core/seq/seq_clientmgr.c
> > @@ -279,7 +279,6 @@ static int seq_free_client1(struct snd_seq_client *client)
> > 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);
> > diff --git a/sound/core/seq/seq_queue.c b/sound/core/seq/seq_queue.c
> > index 71a6ea62c3be..13cfc2d47fa7 100644
> > --- a/sound/core/seq/seq_queue.c
> > +++ b/sound/core/seq/seq_queue.c
> > @@ -537,33 +537,6 @@ int snd_seq_queue_is_used(int queueid, int client)
> >
> > /*----------------------------------------------------------------*/
> >
> > -/* 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)
> > diff --git a/sound/core/seq/seq_queue.h b/sound/core/seq/seq_queue.h
> > index 9254c8dbe5e3..1c3a8d3254d9 100644
> > --- a/sound/core/seq/seq_queue.h
> > +++ b/sound/core/seq/seq_queue.h
> > @@ -59,9 +59,6 @@ struct snd_seq_queue *snd_seq_queue_alloc(int client, int locked, unsigned int f
> > /* 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);
> >
> > --
> > 2.17.1
> >
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-11-04 16:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-03 22:33 [PATCH] sound/core/seq: remove useless function Yu Hao
2020-11-04 8:16 ` Takashi Iwai
2020-11-04 16:15 ` Yu Hao
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox