On 10/02/2017 14:44, Rafał Miłecki wrote:
> From: Rafał Miłecki <ra...@milecki.pl>
> 
> In function service_announce_services we iterate over services and
> handle every single one so calling service_reply which also iterates
> doesn't make sense.
> 
> In simple cases it was just wasting CPU cycles. We got service, we were
> passing its name and we were looking for it again comparing names.
> In cases with one service available on few different ports it was worse.
> For every iterated service we were announcing that one and all other
> sharing the same name. It resulted in sending n^2 records.
> 
> Signed-off-by: Rafał Miłecki <ra...@milecki.pl>

Acked-by: John Crispin <j...@phrozen.org>

> ---
>  service.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/service.c b/service.c
> index 182b2b2..bb87aff 100644
> --- a/service.c
> +++ b/service.c
> @@ -179,7 +179,7 @@ service_announce_services(struct interface *iface, const 
> char *service, int ttl)
>                       else
>                               dns_send_answer(iface, sdudp);
>               }
> -             service_reply(iface, s->service, ttl);
> +             service_reply_single(iface, s, ttl, 0);
>       }
>  }
>  
> 

_______________________________________________
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev

Reply via email to