From patchwork Wed Oct 28 12:46:29 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Narendra K X-Patchwork-Id: 37101 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 4F5F1B7BEB for ; Wed, 28 Oct 2009 23:46:37 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751903AbZJ1Mq0 (ORCPT ); Wed, 28 Oct 2009 08:46:26 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751876AbZJ1Mq0 (ORCPT ); Wed, 28 Oct 2009 08:46:26 -0400 Received: from ausc60ps301.us.dell.com ([143.166.148.206]:32431 "EHLO ausc60ps301.us.dell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751874AbZJ1MqZ (ORCPT ); Wed, 28 Oct 2009 08:46:25 -0400 X-Loopcount0: from 10.9.160.253 Date: Wed, 28 Oct 2009 07:46:29 -0500 From: Narendra K To: linux-hotplug@vger.kernel.org Cc: netdev@vger.kernel.org, matt_domsch@dell.com, jordan_hargrave@dell.com, charles_rose@dell.com, sandeep_k_shandilya@dell.com, dannf@hp.com Subject: [PATCH]udev:Extend udev to support move events Message-ID: <20091028124627.GA20936@mock.linuxdev.us.dell.com> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.18 (2008-05-17) Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org As of now, udev does not support move events that are generated when network interfaces are renamed. This patch extends udev to support move events. With this patch udev would support rules like ACTION=="move", SUBSYSTEM=="net", PROGRAM="netif_id %k" Signed-off-by: Narendra K --- udev/udev-event.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/udev/udev-event.c b/udev/udev-event.c index f4d7121..4a77753 100644 --- a/udev/udev-event.c +++ b/udev/udev-event.c @@ -647,6 +647,13 @@ exit_add: goto exit; } + /* handle "move" event */ + if (strcmp(udev_device_get_subsystem(dev), "net") == 0 && strcmp(udev_device_get_action(dev), "move") == 0) { + udev_rules_apply_to_event(rules, event); + udev_device_update_db(dev); + goto exit; + } + /* remove device node */ if (major(udev_device_get_devnum(dev)) != 0 && strcmp(udev_device_get_action(dev), "remove") == 0) { /* import database entry and delete it */