From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932190AbbJPL23 (ORCPT ); Fri, 16 Oct 2015 07:28:29 -0400 Received: from mout.kundenserver.de ([212.227.126.131]:55909 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752281AbbJPL21 (ORCPT ); Fri, 16 Oct 2015 07:28:27 -0400 From: Arnd Bergmann To: David Laight Cc: huangdaode , "davem@davemloft.net" , "joe@perches.com" , "liguozhu@hisilicon.com" , "Yisen.Zhuang@huawei.com" , "netdev@vger.kernel.org" , "linuxarm@huawei.com" , "salil.mehta@huawei.com" , "kenneth-lee-2012@foxmail.com" , "xuwei5@hisilicon.com" , "lisheng011@huawei.com" , "linux-kernel@vger.kernel.org" , "lipeng321@huawei.com" Subject: Re: [PATCH] net: hix5hd2_gmac: avoid integer overload warning Date: Fri, 16 Oct 2015 13:28:04 +0200 Message-ID: <9667302.4m5v3ViVSt@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) In-Reply-To: <063D6719AE5E284EB5DD2968C1650D6D1CBB97A6@AcuExch.aculab.com> References: <1444967657-107994-1-git-send-email-huangdaode@hisilicon.com> <4752736.dePgPCNd9q@wuerfel> <063D6719AE5E284EB5DD2968C1650D6D1CBB97A6@AcuExch.aculab.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:dm6cdiWGrdRSc5u52U0ZSur4XSo6w2QwW3mqxSyL7B0ZAaEr6YL kkVj+3mRjMle/3z7YLtZMf5XL5aKDJAuOki7KbPX7KGv6yecYYmvweEaGuHc/xkiPERRqKJ qNUEWmFoUbZTkSHqFIVPk1Hl0uR2NcZZ58yuoryMgUSZyQ0TGKBSFvZiRZiMw3KecaDunjl qqV1UNVy0YKIsKyK3OmEQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:FlIeCwrLE4M=:5LXlxagp47iO3ClTP7y9F7 TfYra45pla6+XSDby+q4G5TJOfJrrtsvK7PaCJ7ATD1j4hkmuJWkYqCk1g5xK2Zr5k/AVTTt+ ETdSzngd0tKvoxz0b7xaYcsQLQMH/LtVnjRAcJ81+7OMcrvELk5OuViEag+ZXumD5nBkjtB3D PCaQYStYtmJBRhsfCR24TaViYQSmsBYzSt4eJahlsljzR2tfvXyQYh9VELM4Hs7mW7rE9vMKj S4/Op0m+MHELAsBtGh2xuZ5eGfwQUgLXR5q0w0Vj22/B7DCJDg8EBRIZCVCTOsWvjBkkLaK/q SapbCuOhZK1RBDG0QXaLKhZ+0B49ahwUwW6xLwgUZKxGyeW40fi2Y3ePaCIw7l5KiuyjpgfTF Vy6rw9IdU0qlr2n9Lm1znEV8zKKU/VfEGiodbrT9lNsLDwDri5HzmIDRpDMcuwRU6zZ/hleYy kUZ5Vx+Zhjz3obUkWJg2gfkIOIdrwleMK8EpJPpj3ds/i+nn/KQLE097bCjPWsotplRssVbNZ PV/1oa+Zp5mRL/IParyP0jukIGojZlEgwZzgsLwpd2eXjJLx65eUOLcW+rC2ax+Q3BjL/tx/u S8DQRXQDO4nzMDlrG/zU2wxQDF3RZeGnDBn+K70/SL9kOaTdN9C7hj32PSrU5LB/xMFGuQudW U1MWvgahNjjIYs9o9QerGQiGqob09YcRKp9svCkYcr31bCuinM3YM7QRqG+FJNp+biReG3U/A 97hdgxCSbBoLNDCe Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Friday 16 October 2015 11:14:44 David Laight wrote: > From: Arnd Bergmann > > Sent: 16 October 2015 11:01 > > BITS_RX_EN is an 'unsigned long' constant, so the ones complement of that > > has bits set that do not fit into a 32-bit variable on 64-bit architectures, > > which causes a harmless gcc warning: > ... > > static void hix5hd2_port_disable(struct hix5hd2_priv *priv) > > { > > - writel_relaxed(~(BITS_RX_EN | BITS_TX_EN), priv->base + PORT_EN); > > + writel_relaxed(~(u32)(BITS_RX_EN | BITS_TX_EN), priv->base + PORT_EN); > > writel_relaxed(0, priv->base + DESC_WR_RD_ENA); > > ISTM that just means that the constants shouldn't be 'long'. Right, but that would probably mean changing the BIT() macro or not using it here. In the past I've argued against using that macro, but I've given up that fight. Arnd