From patchwork Thu Mar 1 16:52:27 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Danny Kukawka X-Patchwork-Id: 144070 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 064FAB6EF1 for ; Fri, 2 Mar 2012 03:54:02 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758671Ab2CAQxU (ORCPT ); Thu, 1 Mar 2012 11:53:20 -0500 Received: from wp188.webpack.hosteurope.de ([80.237.132.195]:51680 "EHLO wp188.webpack.hosteurope.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758273Ab2CAQxR (ORCPT ); Thu, 1 Mar 2012 11:53:17 -0500 Received: from nat.nue.novell.com ([195.135.221.2] helo=g231.suse.de); authenticated by wp188.webpack.hosteurope.de running ExIM with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) id 1S39Fb-0008Do-1g; Thu, 01 Mar 2012 17:53:07 +0100 From: Danny Kukawka To: "David S. Miller" Cc: Danny Kukawka , Jiri Pirko , Paul Gortmaker , Jeff Kirsher , Alexey Dobriyan , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 7/7] octeon: use dev_set_mac_address() instead of octeon_mgmt_set_mac_address() Date: Thu, 1 Mar 2012 17:52:27 +0100 Message-Id: <1330620747-4047-8-git-send-email-danny.kukawka@bisect.de> X-Mailer: git-send-email 1.7.8.3 In-Reply-To: <1330620747-4047-1-git-send-email-danny.kukawka@bisect.de> References: <1330620747-4047-1-git-send-email-danny.kukawka@bisect.de> X-bounce-key: webpack.hosteurope.de; danny.kukawka@bisect.de; 1330620797; bbee9633; Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Use dev_set_mac_address() instead of octeon_mgmt_set_mac_address() directly to get validation checks for free. Add .ndo_validate_addr = eth_validate_addr to enable validation. Signed-off-by: Danny Kukawka --- drivers/net/ethernet/octeon/octeon_mgmt.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/octeon/octeon_mgmt.c b/drivers/net/ethernet/octeon/octeon_mgmt.c index cd827ff..096e390 100644 --- a/drivers/net/ethernet/octeon/octeon_mgmt.c +++ b/drivers/net/ethernet/octeon/octeon_mgmt.c @@ -551,9 +551,6 @@ static int octeon_mgmt_set_mac_address(struct net_device *netdev, void *addr) { struct sockaddr *sa = addr; - if (!is_valid_ether_addr(sa->sa_data)) - return -EADDRNOTAVAIL; - memcpy(netdev->dev_addr, sa->sa_data, ETH_ALEN); octeon_mgmt_set_rx_filtering(netdev); @@ -768,7 +765,7 @@ static int octeon_mgmt_open(struct net_device *netdev) cvmx_write_csr(CVMX_AGL_GMX_PRTX_CFG(port), prtx_cfg.u64); memcpy(sa.sa_data, netdev->dev_addr, ETH_ALEN); - octeon_mgmt_set_mac_address(netdev, &sa); + dev_set_mac_address(netdev, &sa); octeon_mgmt_change_mtu(netdev, netdev->mtu); @@ -1064,6 +1061,7 @@ static const struct net_device_ops octeon_mgmt_ops = { .ndo_set_mac_address = octeon_mgmt_set_mac_address, .ndo_do_ioctl = octeon_mgmt_ioctl, .ndo_change_mtu = octeon_mgmt_change_mtu, + .ndo_validate_addr = eth_validate_addr, #ifdef CONFIG_NET_POLL_CONTROLLER .ndo_poll_controller = octeon_mgmt_poll_controller, #endif