grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] add a exit condition even for no stop case


From: Vladimir 'φ-coder/phcoder' Serbinenko
Subject: Re: [PATCH] add a exit condition even for no stop case
Date: Tue, 21 Jan 2014 08:24:19 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Icedove/24.2.0

Go ahead for trunk
On 20.01.2014 20:48, Paulo Flabiano Smorigo wrote:
> Hi all,
> 
> As I said in the my last email, I'm running tests in a network with
> heavy traffic, like, over 150 arp requests comming every second. Under these
> condition, I found an issue in the receive_packets function.
> 
> On line 1456 of net/net.c there is a while (1) that only exits if there
> is a stop condition and more then 10 packages or if there is no package
> received.
> 
> If GRUB is idle and enter in this loop, the only condition to leave is
> if it doesn't have incoming packages. In a network with heavy traffic
> (like mine) this never happens.
> 
> The result is that GRUB becomes muted and freeze.
> 
> I made a small fix that exits this loop if the incoming packages rearch
> a maximum level. I used 100 packages and it seems fine.
> 
> ---
>  grub-core/net/net.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/grub-core/net/net.c b/grub-core/net/net.c
> index 683ab28..f2e723b 100644
> --- a/grub-core/net/net.c
> +++ b/grub-core/net/net.c
> @@ -1453,7 +1453,7 @@ receive_packets (struct grub_net_card *card, int 
> *stop_condition)
>       }
>        card->opened = 1;
>      }
> -  while (1)
> +  while (received < 100)
>      {
>        /* Maybe should be better have a fixed number of packets for each card
>        and just mark them as used and not used.  */ 
> 


Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]