From patchwork Tue Sep 23 19:52:08 2008 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Oliver Hartkopp X-Patchwork-Id: 1164 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.176.167]) by ozlabs.org (Postfix) with ESMTP id 338E0DE327 for ; Wed, 24 Sep 2008 05:52:14 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752506AbYIWTwI (ORCPT ); Tue, 23 Sep 2008 15:52:08 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751972AbYIWTwH (ORCPT ); Tue, 23 Sep 2008 15:52:07 -0400 Received: from mo-p00-ob.rzone.de ([81.169.146.162]:27807 "EHLO mo-p00-ob.rzone.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750928AbYIWTwG (ORCPT ); Tue, 23 Sep 2008 15:52:06 -0400 X-RZG-CLASS-ID: mo00 X-RZG-AUTH: :I2ANY0W6W/eA95XfH/xfO6gOxLxTty/udEMngcJ/VAKW226lDNJVyuYEIzI8Pb0x Received: from [192.168.11.10] (p5B22BBFE.dip.t-dialin.net [91.34.187.254]) by post.webmailer.de (klopstock mo19) (RZmta 17.4) with ESMTP id C05f40k8NHoJEi ; Tue, 23 Sep 2008 21:52:02 +0200 (MEST) (envelope-from: ) Message-ID: <48D948E8.6090804@hartkopp.net> Date: Tue, 23 Sep 2008 21:52:08 +0200 From: Oliver Hartkopp User-Agent: Mozilla-Thunderbird 2.0.0.16 (X11/20080724) MIME-Version: 1.0 To: Stephen Hemminger CC: David Miller , netdev@vger.kernel.org Subject: [PATCH net-next]: net: remove ifalias on empty given alias References: <20080922174346.2ad15d26@extreme> In-Reply-To: <20080922174346.2ad15d26@extreme> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This patch removes the potentially allocated ifalias when the (new) given alias is empty. E.g. when setting echo "" > /sys/class/net/eth0/ifalias Signed-off-by: Oliver Hartkopp Acked-by: Stephen Hemminger --- Hello Stephen, this patch allows to 'remove' or reset the ifalias by giving an empty alias. The patch is tested. Btw. ifalias is a nice idea also for CAN bus people to 'name' a given CAN bus. Thanks & regards, Oliver diff --git a/net/core/dev.c b/net/core/dev.c index e913905..a90737f 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -967,6 +967,14 @@ int dev_set_alias(struct net_device *dev, const char *alias, size_t len) if (len >= IFALIASZ) return -EINVAL; + if (!len) { + if (dev->ifalias) { + kfree(dev->ifalias); + dev->ifalias = NULL; + } + return 0; + } + dev->ifalias = krealloc(dev->ifalias, len+1, GFP_KERNEL); if (!dev->ifalias) return -ENOMEM;