From: Shannon Nelson <shannon.nelson@oracle.com>
To: James Hogan <jhogan@kernel.org>,
Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Cc: davem@davemloft.net, Alice Michael <alice.michael@intel.com>,
netdev@vger.kernel.org, nhorman@redhat.com, sassmann@redhat.com,
jogreene@redhat.com, Ralf Baechle <ralf@linux-mips.org>,
linux-mips@linux-mips.org
Subject: Re: [net-next,06/15] i40e: change flags to use 64 bits
Date: Wed, 7 Feb 2018 09:02:17 -0800 [thread overview]
Message-ID: <e7c934d7-e5f4-ee1b-0647-c31a98d9e944@oracle.com> (raw)
In-Reply-To: <20180207150907.GB5092@saruman>
On 2/7/2018 7:09 AM, James Hogan wrote:
> On Fri, Jan 26, 2018 at 01:24:50PM -0800, Jeff Kirsher wrote:
>> From: Alice Michael <alice.michael@intel.com>
>>
>> As we have added more flags, we need to now use more
>> bits and have over flooded the 32 bit size. So
>> make it 64.
>>
>> Also change all the existing bits to unsigned long long
>> bits.
>>
>> Signed-off-by: Alice Michael <alice.michael@intel.com>
>> Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
>> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
>> ---
>> drivers/net/ethernet/intel/i40e/i40e.h | 67 +++++++++++++-------------
>> drivers/net/ethernet/intel/i40e/i40e_ethtool.c | 4 +-
>> 2 files changed, 36 insertions(+), 35 deletions(-)
>
> ...
>
>> @@ -4323,7 +4323,7 @@ static int i40e_set_priv_flags(struct net_device *dev, u32 flags)
>> * originally. We'll just punt with an error and log something in the
>> * message buffer.
>> */
>> - if (cmpxchg(&pf->flags, orig_flags, new_flags) != orig_flags) {
>> + if (cmpxchg64(&pf->flags, orig_flags, new_flags) != orig_flags) {
>
> This breaks allyesconfig builds on certain architectures, for example
> MIPS 32-bit with SMP enabled, which doesn't support cmpxchg64:
>
> CC drivers/net/ethernet/intel/i40e/i40e_ethtool.o
> drivers/net/ethernet/intel/i40e/i40e_ethtool.c: In function ‘i40e_set_priv_flags’:
> drivers/net/ethernet/intel/i40e/i40e_ethtool.c:4326:6: error: implicit declaration of function ‘cmpxchg64’; did you mean ‘__cmpxchg’? [-Werror=implicit-function-declaration]
> if (cmpxchg64(&pf->flags, orig_flags, new_flags) != orig_flags) {
> ^~~~~~~~~
> __cmpxchg
>
> Should the driver now depend on 64BIT or something?
A long time ago this was the original expectation for this driver, but
it was strongly suggested that in order to play well in the kernel it
needed to be usable in 32-bit builds as well. I suspect this sentiment
remains, and besides we don't want to break existing support, so this
probably needs to be addressed for 32-bit.
sln
>
> Cheers
> James
>
next prev parent reply other threads:[~2018-02-07 17:02 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-26 21:24 [net-next 00/15][pull request] 40GbE Intel Wired LAN Driver Updates 2018-01-26 Jeff Kirsher
2018-01-26 21:24 ` [net-next 01/15] i40e: Add returning AQ critical error to SW Jeff Kirsher
2018-01-26 21:24 ` [net-next 02/15] i40e: Fix for adding multiple ethtool filters on the same location Jeff Kirsher
2018-01-26 21:24 ` [net-next 03/15] i40evf: Allow turning off offloads when the VF has VLAN set Jeff Kirsher
2018-01-26 21:24 ` [net-next 04/15] i40e/i40evf: Use ring pointers to clean up _set_itr_per_queue Jeff Kirsher
2018-01-26 21:24 ` [net-next 05/15] i40e: Display LLDP information on vSphere Web Client Jeff Kirsher
2018-01-26 21:24 ` [net-next 06/15] i40e: change flags to use 64 bits Jeff Kirsher
2018-02-07 15:09 ` [net-next,06/15] " James Hogan
2018-02-07 17:02 ` Shannon Nelson [this message]
2018-01-26 21:24 ` [net-next 07/15] i40e: Implement an ethtool private flag to stop LLDP in FW Jeff Kirsher
2018-01-27 20:50 ` Or Gerlitz
2018-01-26 21:24 ` [net-next 08/15] i40e: fix FW_LLDP flag on init Jeff Kirsher
2018-01-26 21:24 ` [net-next 09/15] i40e: cleanup unnecessary parens Jeff Kirsher
2018-01-26 21:24 ` [net-next 10/15] i40e: Fix kdump failure Jeff Kirsher
2018-01-26 21:24 ` [net-next 11/15] i40e: program fragmented IPv4 filter input set Jeff Kirsher
2018-01-26 21:24 ` [net-next 12/15] i40e: disallow programming multiple filters with same criteria Jeff Kirsher
2018-01-26 21:24 ` [net-next 13/15] i40e: fix reported mask for ntuple filters Jeff Kirsher
2018-01-26 21:24 ` [net-next 14/15] i40e/i40evf: Record ITR register location in the q_vector Jeff Kirsher
2018-01-26 21:24 ` [net-next 15/15] i40e: Do not allow use more TC queue pairs than MSI-X vectors exist Jeff Kirsher
2018-01-29 2:27 ` [net-next 00/15][pull request] 40GbE Intel Wired LAN Driver Updates 2018-01-26 David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e7c934d7-e5f4-ee1b-0647-c31a98d9e944@oracle.com \
--to=shannon.nelson@oracle.com \
--cc=alice.michael@intel.com \
--cc=davem@davemloft.net \
--cc=jeffrey.t.kirsher@intel.com \
--cc=jhogan@kernel.org \
--cc=jogreene@redhat.com \
--cc=linux-mips@linux-mips.org \
--cc=netdev@vger.kernel.org \
--cc=nhorman@redhat.com \
--cc=ralf@linux-mips.org \
--cc=sassmann@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).