Re: 3C905b partial lockup in 2.4.5-pre5 and up to 2.4.6-pre1

Russell King (rmk@arm.linux.org.uk)
Sun, 10 Jun 2001 17:34:19 +0100


On Sun, Jun 10, 2001 at 12:06:08PM -0400, Ben LaHaise wrote:
> I doubt it's a change, more likely an undocumented requirement. Look at
> it another way: is the transmitter ready when the link is down? No.
> Why? Because if it does attempt to transmit a packet, it will get a
> transmit error, but it can't possibly be an error since it's a normal part
> of bringing the link up. Does this sound reasonable?

Indeed. However, I don't believe user space should _rely_ on the flag.
The reason is that there are network cards out there where the only way
to get the link status _is_ to transmit a packet, even on 10baseT.

PCNET is one example - the "oh my god my link is down" status bit is in
the transmit ring headers, not in an easily accessible register.

The only interpretation user space can place on IFF_RUNNING for these
cards is that if its not set, packets will get dropped by the interface.
If its set, packets _may_ be dropped by the interface.

[note I've not found anything in 2.4.5 where netif_carrier_ok prevents
the net layers queueing packets for an interface, and forwarding them
on for transmission].

--
Russell King (rmk@arm.linux.org.uk)                The developer of ARM Linux
             http://www.arm.linux.org.uk/personal/aboutme.html

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/