From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pa0-f43.google.com (mail-pa0-f43.google.com [209.85.220.43]) by dpdk.org (Postfix) with ESMTP id 486F28D8C for ; Thu, 15 Oct 2015 18:17:04 +0200 (CEST) Received: by padcn9 with SMTP id cn9so10336444pad.3 for ; Thu, 15 Oct 2015 09:17:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-type:content-transfer-encoding; bh=41MhAQFPL4KLO8np58JRK+UzQz9wsMPyU6/T9NwHnps=; b=j3MOS+m7TFb+18ba0capDoJlP/zVs98pNg9K5tBDY8oJ36bc9ffIF+L6xrTtHtw9lz 30da5GcTTMFiEU2HnABNtWgmhuRqkv0nAihfBsXIPfTs+xUVDsRcixP3e8X7j3kGwB3z cdKi02WmyEhxgt5H3icniy60n4Vgia0FTMNIzA7WD6Rz/ITj9QpjN+CG+btCh4FRH9fr JjXCQtsly+NFDz6eQgYN/LkCNs8LvfdpieqxshAn9j8gNKv9VP747qsNVwdoDa0P/GEr GvZyT5N5RSn/zmpNLCBfpBmn1NpNFmbvQOWoXbPCjzgUhPsES/jK6lHstnIZUfr/Sg56 vFqQ== X-Received: by 10.66.101.68 with SMTP id fe4mr11090735pab.30.1444925823374; Thu, 15 Oct 2015 09:17:03 -0700 (PDT) Received: from [192.168.1.188] (static-50-53-21-5.bvtn.or.frontiernet.net. [50.53.21.5]) by smtp.googlemail.com with ESMTPSA id qy7sm16356561pab.37.2015.10.15.09.17.02 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 15 Oct 2015 09:17:02 -0700 (PDT) To: Alex Forster References: From: Alexander Duyck Message-ID: <561FD17E.6070908@gmail.com> Date: Thu, 15 Oct 2015 09:17:02 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] Question about unsupported transceivers 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: Thu, 15 Oct 2015 16:17:04 -0000 On 10/15/2015 08:43 AM, Alex Forster wrote: > On 10/15/15, 11:30 AM, "Alexander Duyck" wrote: > >> On 10/15/2015 07:46 AM, Alex Forster wrote: >>> On 10/13/15, 4:34 PM, "Alexander Duyck" >>> wrote: >>> >>>> If you are using Intel's out-of-tree ixgbe driver I believe the module >>>> parameters are comma separated with one index per port. So if you have >>>> two ports you should be passing "allow_unsupported_sfp=1,1", and for 4 >>>> you would need four '1's. >>> >>> This seemed very promising. I compiled and installed the out of tree >>> ixgbe >>> driver and set the option in /etc/modprobe.d/ixgbe.conf. dmesg shows all >>> eight "allow_unsupported_sfp enabled" messages but the last four ports >>> still error out with the unsupported SFP message when running the tests. >>> >>> Before I start arbitrarily trying to patch out parts of the SFP >>> verification code in ixgbe, are there any other tips I should know? >> >> Can you send me the command you used to load the module, and the exact >> number of ixgbe ports you have in the system? With that I could then >> verify that the command was entered correctly as it is possible there >> could still be an issue in the way the command was entered. >> >> One other possibility is that when the driver loads each load counts as >> an instance in the module parameter array. So if for example you unbind >> the driver on one port and then later rebind it you will have consumed >> one of the values in the array. Do it enough times and you exceed the >> bounds of the array as you entered it and it will simply use the default >> value of 0. >> >> Also the output of "ethtool -i " would be useful to verify that >> you have the out-of-tree driver loaded and not the in kernel. >> >> - Alex >> > > Er, let me try that again. > > https://gist.github.com/AlexForster/f5372c5b60153d278089 > > > Alex Forster > > It looks like you are probably seeing interfaces be unbound and then rebound. As such you are likely pushing things outside of the array boundary. One solution might just be to at more ",1"s if you are only going to be doing this kind of thing at boot up. The upper limit for the array is 32 entries so as long as you only are setting this up once you could probably get away with that. An alternative would be to modify the definition of the parameter in ixgbe_param.c. If you look through the file you should fine several likes like below: struct ixgbe_option opt = { .type = enable_option, .name = "allow_unsupported_sfp", .err = "defaulting to Disabled", .def = OPTION_DISABLED }; If you modify the .def value to "OPTION_ENABLED", and then rebuild and reinstall your driver you should be able have it install without any issues. - Alex