9
0
Fork 0

net: remove NetStartAgain()

Do not let the network stack restart itself

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Sascha Hauer 2009-08-19 13:39:26 +02:00
parent eedb766979
commit 5e29712041
4 changed files with 7 additions and 60 deletions

View File

@ -329,13 +329,8 @@ BootpHandler(uchar * pkt, unsigned dest, unsigned src, unsigned len)
static void
BootpTimeout(void)
{
if (BootpTry >= TIMEOUT_COUNT) {
puts ("\nRetry count exceeded; starting again\n");
NetStartAgain ();
} else {
NetSetTimeout (TIMEOUT * SECOND, BootpTimeout);
BootpRequest ();
}
NetSetTimeout (TIMEOUT * SECOND, BootpTimeout);
BootpRequest ();
}
/*

View File

@ -177,7 +177,6 @@ uchar *NetArpWaitTxPacket; /* THE transmit packet */
int NetArpWaitTxPacketSize;
uchar NetArpWaitPacketBuf[PKTSIZE_ALIGN + PKTALIGN];
uint64_t NetArpWaitTimerStart;
int NetArpWaitTry;
void ArpRequest (void)
{
@ -186,7 +185,7 @@ void ArpRequest (void)
ARP_t *arp;
#ifdef ET_DEBUG
printf ("ARP broadcast %d\n", NetArpWaitTry);
printf ("ARP broadcast\n");
#endif
pkt = NetTxPacket;
@ -229,16 +228,8 @@ void ArpTimeoutCheck(void)
/* check for arp timeout */
if (is_timeout(NetArpWaitTimerStart, ARP_TIMEOUT)) {
NetArpWaitTry++;
if (NetArpWaitTry >= ARP_TIMEOUT_COUNT) {
puts ("\nARP Retry count exceeded; starting again\n");
NetArpWaitTry = 0;
NetStartAgain();
} else {
NetArpWaitTimerStart = get_time_ns();
ArpRequest();
}
NetArpWaitTimerStart = get_time_ns();
ArpRequest();
}
}
@ -435,38 +426,6 @@ restart:
}
}
/**********************************************************************/
static void
startAgainTimeout(void)
{
NetState = NETLOOP_RESTART;
}
static void
startAgainHandler(uchar * pkt, unsigned dest, unsigned src, unsigned len)
{
/* Totally ignore the packet */
}
void NetStartAgain (void)
{
const char *nretry;
int noretry = 0, once = 0;
if ((nretry = getenv ("netretry")) != NULL) {
noretry = (strcmp (nretry, "no") == 0);
once = (strcmp (nretry, "once") == 0);
}
if (noretry) {
eth_halt ();
NetState = NETLOOP_FAIL;
return;
}
NetSetTimeout (10 * SECOND, startAgainTimeout);
NetSetHandler (startAgainHandler);
}
/**********************************************************************/
/*
* Miscelaneous bits.
@ -530,7 +489,6 @@ NetSendUDPPacket(uchar *ether, IPaddr_t dest, int dport, int sport, int len)
NetArpWaitTxPacketSize = (pkt - NetArpWaitTxPacket) + IP_HDR_SIZE + len;
/* and do the ARP request */
NetArpWaitTry = 1;
NetArpWaitTimerStart = get_time_ns();
ArpRequest();
return 1; /* waiting */

View File

@ -54,7 +54,6 @@ static int PingSend(void)
NetArpWaitTxPacketSize = (pkt - NetArpWaitTxPacket) + IP_HDR_SIZE_NO_UDP + 8;
/* and do the ARP request */
NetArpWaitTry = 1;
NetArpWaitTimerStart = get_time_ns();
ArpRequest();
return 1; /* waiting */

View File

@ -59,13 +59,8 @@ RarpHandler(uchar * dummi0, unsigned dummi1, unsigned dummi2, unsigned dummi3)
static void
RarpTimeout(void)
{
if (RarpTry >= TIMEOUT_COUNT) {
puts ("\nRetry count exceeded; starting again\n");
NetStartAgain ();
} else {
NetSetTimeout (TIMEOUT * SECOND, RarpTimeout);
RarpRequest ();
}
NetSetTimeout (TIMEOUT * SECOND, RarpTimeout);
RarpRequest ();
}