ehea: Fixed wrong jumbo frames status query
This patch fixes the wrong query and logging of the per interface jumbo frames enabled/disabled status. Signed-off-by: Thomas Klein <tklein@de.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
		
							parent
							
								
									9e8e83d1ba
								
							
						
					
					
						commit
						9c750b7d14
					
				| @ -39,7 +39,7 @@ | ||||
| #include <asm/io.h> | ||||
| 
 | ||||
| #define DRV_NAME	"ehea" | ||||
| #define DRV_VERSION	"EHEA_0044" | ||||
| #define DRV_VERSION	"EHEA_0045" | ||||
| 
 | ||||
| #define EHEA_MSG_DEFAULT (NETIF_MSG_LINK | NETIF_MSG_TIMER \ | ||||
| 	| NETIF_MSG_RX_ERR | NETIF_MSG_TX_ERR) | ||||
|  | ||||
| @ -2316,6 +2316,7 @@ static int ehea_setup_single_port(struct ehea_port *port, | ||||
| 	struct ehea_adapter *adapter = port->adapter; | ||||
| 	struct hcp_ehea_port_cb4 *cb4; | ||||
| 	u32 *dn_log_port_id; | ||||
| 	int jumbo = 0; | ||||
| 
 | ||||
| 	sema_init(&port->port_lock, 1); | ||||
| 	port->state = EHEA_PORT_DOWN; | ||||
| @ -2357,13 +2358,25 @@ static int ehea_setup_single_port(struct ehea_port *port, | ||||
| 	if (!cb4) { | ||||
| 		ehea_error("no mem for cb4"); | ||||
| 	} else { | ||||
| 		cb4->jumbo_frame = 1; | ||||
| 		hret = ehea_h_modify_ehea_port(adapter->handle, | ||||
| 					       port->logical_port_id, | ||||
| 					       H_PORT_CB4, H_PORT_CB4_JUMBO, | ||||
| 					       cb4); | ||||
| 		if (hret != H_SUCCESS) { | ||||
| 			ehea_info("Jumbo frames not activated"); | ||||
| 		hret = ehea_h_query_ehea_port(adapter->handle, | ||||
| 					      port->logical_port_id, | ||||
| 					      H_PORT_CB4, | ||||
| 					      H_PORT_CB4_JUMBO, cb4); | ||||
| 
 | ||||
| 		if (hret == H_SUCCESS) { | ||||
| 			if (cb4->jumbo_frame) | ||||
| 				jumbo = 1; | ||||
| 			else { | ||||
| 				cb4->jumbo_frame = 1; | ||||
| 				hret = ehea_h_modify_ehea_port(adapter->handle, | ||||
| 							       port-> | ||||
| 							        logical_port_id, | ||||
| 							       H_PORT_CB4, | ||||
| 							       H_PORT_CB4_JUMBO, | ||||
| 							       cb4); | ||||
| 				if (hret == H_SUCCESS) | ||||
| 					jumbo = 1; | ||||
| 			} | ||||
| 		} | ||||
| 		kfree(cb4); | ||||
| 	} | ||||
| @ -2402,6 +2415,9 @@ static int ehea_setup_single_port(struct ehea_port *port, | ||||
| 		goto out_free; | ||||
| 	} | ||||
| 
 | ||||
| 	ehea_info("%s: Jumbo frames are %sabled", dev->name, | ||||
| 		  jumbo == 1 ? "en" : "dis"); | ||||
| 
 | ||||
| 	port->netdev = dev; | ||||
| 	ret = 0; | ||||
| 	goto out; | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user