mirror of
https://github.com/ipxe/ipxe
synced 2025-12-22 13:00:39 +03:00
[stp] Add support for detecting Spanning Tree Protocol non-forwarding ports
A fairly common end-user problem is that the default configuration of a switch may leave the port in a non-forwarding state for a substantial length of time (tens of seconds) after link up. This can cause iPXE to time out and give up attempting to boot. We cannot force the switch to start forwarding packets sooner, since any attempt to send a Spanning Tree Protocol bridge PDU may cause the switch to disable our port (if the switch happens to have the Bridge PDU Guard feature enabled for the port). For non-ancient versions of the Spanning Tree Protocol, we can detect whether or not the port is currently forwarding and use this to inform the network device core that the link is currently blocked. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
@@ -40,3 +40,6 @@ REQUIRE_OBJECT ( aoe );
|
||||
#ifdef NET_PROTO_FCOE
|
||||
REQUIRE_OBJECT ( fcoe );
|
||||
#endif
|
||||
#ifdef NET_PROTO_STP
|
||||
REQUIRE_OBJECT ( stp );
|
||||
#endif
|
||||
|
||||
@@ -37,6 +37,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
|
||||
#define NET_PROTO_IPV4 /* IPv4 protocol */
|
||||
#undef NET_PROTO_IPV6 /* IPv6 protocol */
|
||||
#undef NET_PROTO_FCOE /* Fibre Channel over Ethernet protocol */
|
||||
#define NET_PROTO_STP /* Spanning Tree protocol */
|
||||
|
||||
/*
|
||||
* PXE support
|
||||
|
||||
Reference in New Issue
Block a user