From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ee0-x22f.google.com (mail-ee0-x22f.google.com [IPv6:2a00:1450:4013:c00::22f]) by dpdk.org (Postfix) with ESMTP id 487E1234 for ; Mon, 3 Jun 2013 18:36:44 +0200 (CEST) Received: by mail-ee0-f47.google.com with SMTP id t10so1131331eei.6 for ; Mon, 03 Jun 2013 09:36:51 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:organization:to:subject:date:user-agent:cc:references :in-reply-to:mime-version:content-type:content-transfer-encoding :message-id:x-gm-message-state; bh=K6vWBJmBPnNrP3DNDjq9C+CRT198tdNCLCYsWzDaScs=; b=D5SL3xOhDoRs6kH7UUeULI+VG2Zi9IUi22qik3INsHrgYWyjkXeYwKo9TJqnrwjVKm PbvQSoclofgD2S9b9ky28Qyb1eHVSXTbTKsdbtmMwKOS8n0i8C3YWSo3QbqlX7LDwH7s sjUszu1zRWY9b+RzLf9G4YjRpKtMS9D9tR0DbFP4C3MVE1nrRQkAQaJHaVz8BWbrKPjx WW9fvESuxnjegszs5dqYhXn2izCF6hTLb9qCu1/BPyrNnpJHPeQGmqQRWamLsPN3Uwmg tU5hgfoiCNsMYGCmNHWajTAvxFcvGm67/k2GVhbuc5xCtEECBF12ul2WfEEMweBaOudk JLDA== X-Received: by 10.14.176.134 with SMTP id b6mr23442422eem.119.1370277411339; Mon, 03 Jun 2013 09:36:51 -0700 (PDT) Received: from angus.localnet (6wind.net2.nerim.net. [213.41.180.237]) by mx.google.com with ESMTPSA id y2sm85764055eeu.2.2013.06.03.09.36.49 for (version=TLSv1.2 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 03 Jun 2013 09:36:50 -0700 (PDT) From: Thomas Monjalon Organization: 6WIND To: Stephen Hemminger Date: Mon, 3 Jun 2013 18:36:52 +0200 User-Agent: KMail/1.13.7 (Linux/3.2.0-4-amd64; KDE/4.8.4; x86_64; ; ) References: <20130530171234.301927271@vyatta.com> <51AC5A99.1050207@6wind.com> <20130603084154.70219c8f@nehalam.linuxnetplumber.net> In-Reply-To: <20130603084154.70219c8f@nehalam.linuxnetplumber.net> MIME-Version: 1.0 Content-Type: Text/Plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <201306031836.52362.thomas.monjalon@6wind.com> X-Gm-Message-State: ALoCoQknSFTMDrh0cblo1ZhKZNmZralG64wlLzY6CFcKNoodu/cKdzTQThtG/T58LAm63laTCokl Cc: dev@dpdk.org Subject: Re: [dpdk-dev] [PATCH 4/7] eal: support different modules X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Jun 2013 16:36:44 -0000 03/06/2013 17:41, Stephen Hemminger : > On Mon, 03 Jun 2013 10:58:01 +0200 > Damien Millescamps wrote: > > > > > > --- a/lib/librte_eal/common/include/rte_pci.h 2013-05-29 > > > 08:45:38.000000000 -0700 +++ > > > b/lib/librte_eal/common/include/rte_pci.h 2013-05-29 > > > 09:02:50.000000000 -0700 @@ -151,12 +151,11 @@ struct rte_pci_driver { > > > > > > pci_devinit_t *devinit; /**< Device init. function. > > > */ struct rte_pci_id *id_table; /**< ID table, NULL > > > terminated. */ uint32_t drv_flags; /**< Flags > > > contolling handling of device. */ > > > > > > + const char *module_name; /**< Associated kernel module */ > > > > You solution only permits for one module to be checked during > > initialization, while the former solution using flags could be easily > > extended to check for more than one module. > > However it is true that there is a problem with this module check since > > it is historically hard-coded for "igb_uio". > > It is one module per driver which works quite well. > The code identifies the module to load based on the PCI id. There are cases where we need more than one kernel module for 2 reasons: - in this case, igb_uio is built and inserted without dependency on uio - some other PMDs/NICs, several modules without dependency links could be needed Please could you refactor your patch accordingly ? Thanks -- Thomas