From patchwork Mon Mar 21 10:37:08 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: amit salecha X-Patchwork-Id: 87739 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 73318B6F10 for ; Mon, 21 Mar 2011 21:37:28 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752973Ab1CUKhY (ORCPT ); Mon, 21 Mar 2011 06:37:24 -0400 Received: from mvnat01.qlogic.com ([198.186.3.73]:34965 "EHLO unm84.unminc.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752942Ab1CUKhX (ORCPT ); Mon, 21 Mar 2011 06:37:23 -0400 Received: from unm84.unminc.com (localhost.localdomain [127.0.0.1]) by unm84.unminc.com (8.13.8/8.13.8) with ESMTP id p2LAbLNl006318; Mon, 21 Mar 2011 03:37:21 -0700 Received: (from amit@localhost) by unm84.unminc.com (8.13.8/8.13.8/Submit) id p2LAb80R006317; Mon, 21 Mar 2011 03:37:08 -0700 X-Authentication-Warning: unm84.unminc.com: amit set sender to amit.salecha@qlogic.com using -f From: Amit Kumar Salecha To: davem@davemloft.net Cc: netdev@vger.kernel.org, ameen.rahman@qlogic.com, Rajesh Borundia Subject: [PATCH] netxen: fix LRO disable warning Date: Mon, 21 Mar 2011 03:37:08 -0700 Message-Id: <1300703828-6291-1-git-send-email-amit.salecha@qlogic.com> X-Mailer: git-send-email 1.7.3.2 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org netxen_nic_set_flags() rejects data if other flag than ETH_FLAG_LRO is set. Driver also supports NETIF_F_HW_VLAN_TX. Now compare data with ethtool_op_get_flags(), to get all supported features. Reported-by: Jesper Dangaard Brouer Signed-off-by: Rajesh Borundia Signed-off-by: Amit Kumar Salecha --- drivers/net/netxen/netxen_nic_ethtool.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/drivers/net/netxen/netxen_nic_ethtool.c b/drivers/net/netxen/netxen_nic_ethtool.c index 653d308..31c41d6 100644 --- a/drivers/net/netxen/netxen_nic_ethtool.c +++ b/drivers/net/netxen/netxen_nic_ethtool.c @@ -871,7 +871,8 @@ static int netxen_nic_set_flags(struct net_device *netdev, u32 data) struct netxen_adapter *adapter = netdev_priv(netdev); int hw_lro; - if (data & ~ETH_FLAG_LRO) + if ((ethtool_op_get_flags(netdev) & ~ETH_FLAG_LRO) != + (data & ~ETH_FLAG_LRO)) return -EINVAL; if (!(adapter->capabilities & NX_FW_CAPABILITY_HW_LRO))