I checked out the latest version of grub, built an image using grub-mknetdir, and the ARP storm is from the efinet driver. The
code is stuck in the following loop in net/drivers/efi/efinet.c lines 43 through 66. efi_call_3 always returns a txbuf that does not match dev->txbuf, and eif_call_7 is repeatedly called until the limit_time has been exceeded. Any thoughts from the grub team on what could be the problem or what I should do to continue to debug?
while (1)
{
txbuf = NULL;
st = efi_call_3 (net->get_status, net, 0, &txbuf);
if (st != GRUB_EFI_SUCCESS)
return grub_error (GRUB_ERR_IO, N_("couldn't send network packet"));
if (txbuf == dev->txbuf)
{ dev->txbusy = 0;
break;
}
if (txbuf)
{
st = efi_call_7 (net->transmit, net, 0, dev->last_pkt_size, dev->txbuf, NULL, NULL, NULL);
if (st != GRUB_EFI_SUCCESS) return grub_error (GRUB_ERR_IO, N_("couldn't send network packet"));
}
if (limit_time < grub_get_time_ms ())
return grub_error (GRUB_ERR_TIMEOUT, N_("couldn't send network packet"));
}
I checked out the latest version of grub, built an image using grub-mknetdir, and the ARP storm is from the efinet driver. The efi/efinet. c lines 43 through 66. efi_call_3 always returns a txbuf that does not match dev->txbuf, and eif_call_7 is repeatedly called until the limit_time has been exceeded. Any thoughts from the grub team on what could be the problem or what I should do to continue to debug?
code is stuck in the following loop in net/drivers/
while (1)
N_("couldn' t send network packet"));
dev- >txbusy = 0;
dev->txbuf, NULL, NULL, NULL);
return grub_error (GRUB_ERR_IO,
N_ ("couldn' t send network packet"));
N_("couldn' t send network packet"));
{
txbuf = NULL;
st = efi_call_3 (net->get_status, net, 0, &txbuf);
if (st != GRUB_EFI_SUCCESS)
return grub_error (GRUB_ERR_IO,
if (txbuf == dev->txbuf)
{
break;
}
if (txbuf)
{
st = efi_call_7 (net->transmit, net, 0, dev->last_pkt_size,
if (st != GRUB_EFI_SUCCESS)
}
if (limit_time < grub_get_time_ms ())
return grub_error (GRUB_ERR_TIMEOUT,
}