Skip to contentSkip to conversation

iseries_veth: Don't send packets to LPARs which aren't up

PATCH In review Michael Ellerman 2 participants 2 messages May 12, 2005 – May 15, 2005

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/4 iseries_veth: Don't send packets to LPARs which aren't up

Hi Andrew, Jeff,

The iseries_veth driver has a logic bug which means it will erroneously send packets to LPARs for which we don't have a connection.

This usually isn't a big problem because the Hypervisor call fails gracefully and we return, but if packets are TX'ed during the negotiation of the connection bad things might happen.

Regardless, the right thing is to bail early if we know there's no connection.

--

 iseries_veth.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)
drivers/net/iseries_veth.c +1 -1
Index: veth-fixes/drivers/net/iseries_veth.c
===================================================================
@@ -924,7 +924,7 @@ static int veth_transmit_to_one(struct s
 
 	spin_lock_irqsave(&cnx->lock, flags);
 
-	if (! cnx->state & VETH_STATE_READY)
+	if (! (cnx->state & VETH_STATE_READY))
 		goto drop;
 
 	if ((skb->len - 14) > VETH_MAX_MTU)