[Etherboot-developers] main.c:cleanup()
Brought to you by:
marty_connor,
stefanhajnoczi
|
From: <ke...@us...> - 2001-06-23 03:43:27
|
Hi, I've found that it's not safe to call eth_reset after eth_disable in cleanup(). On my 3c509 it hangs the program. So I have removed it from 5.0.2. This probably means 5.1.0 wasn't much tested. Part of the problem is that the semantics of eth_probe, eth_reset and eth_disable have never been rigorously defined. Informally I took it to be: eth_probe: Finds the card eth_reset: Resets the card to a known state can be called in last part of eth_probe Normal operation: eth_reset can be called as often as wished eth_disable: Disables the card Only eth_probe can be called thereafter I feel that if eth_disable is felt to be inadequate for cleanup, then it should be enhanced, rather than calling eth_reset from cleanup. Another possibility is for cleanup() to call eth_reset first, then eth_disable. I would be willing to introduce this in 5.1.1 but I feel 5.0.2 should not risk breaking things for the majority of users. Comments? |