From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from host.buserror.net (host.buserror.net [209.198.135.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 23C991A0311 for ; Sat, 5 Mar 2016 14:51:09 +1100 (AEDT) Date: Fri, 4 Mar 2016 21:50:54 -0600 From: Scott Wood To: Christophe Leroy Cc: Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , scottwood@freescale.com, netdev@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org Message-ID: <20160305035054.GA5277@home.buserror.net> References: <807dbc9449077e36752c649c09ae1c0d70e45254.1442876807.git.christophe.leroy@c-s.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <807dbc9449077e36752c649c09ae1c0d70e45254.1442876807.git.christophe.leroy@c-s.fr> Subject: Re: [4/9] powerpc: inline ip_fast_csum() List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Tue, Sep 22, 2015 at 04:34:25PM +0200, Christophe Leroy wrote: > @@ -137,6 +130,45 @@ static inline __wsum csum_add(__wsum csum, __wsum addend) > #endif > } > > +/* > + * This is a version of ip_compute_csum() optimized for IP headers, > + * which always checksum on 4 octet boundaries. ihl is the number > + * of 32-bit words and is always >= 5. > + */ > +static inline __wsum ip_fast_csum_nofold(const void *iph, unsigned int ihl) > +{ > + u32 *ptr = (u32 *)iph + 1; const? > +#ifdef __powerpc64__ > + unsigned int i; > + u64 s = *(__force u32 *)iph; const? Why __force? > + s += (s >> 32); > + return (__force __wsum)s; > + > +#else > + __wsum sum, tmp; > + > + asm("mtctr %3;" > + "addc %0,%4,%5;" > + "1:lwzu %1, 4(%2);" > + "adde %0,%0,%1;" > + "bdnz 1b;" > + "addze %0,%0;" > + : "=r"(sum), "=r"(tmp), "+b"(ptr) > + : "r"(ihl - 2), "r"(*(u32 *)iph), "r"(*ptr) > + : "ctr", "xer", "memory"); Space between " and ( Space after : const in cast I've fixed these up while applying. -Scott From mboxrd@z Thu Jan 1 00:00:00 1970 From: Scott Wood Subject: Re: [4/9] powerpc: inline ip_fast_csum() Date: Fri, 4 Mar 2016 21:50:54 -0600 Message-ID: <20160305035054.GA5277@home.buserror.net> References: <807dbc9449077e36752c649c09ae1c0d70e45254.1442876807.git.christophe.leroy@c-s.fr> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Cc: linux-kernel@vger.kernel.org, Paul Mackerras , netdev@vger.kernel.org, scottwood@freescale.com, linuxppc-dev@lists.ozlabs.org To: Christophe Leroy Return-path: Content-Disposition: inline In-Reply-To: <807dbc9449077e36752c649c09ae1c0d70e45254.1442876807.git.christophe.leroy@c-s.fr> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linuxppc-dev-bounces+glppe-linuxppc-embedded-2=m.gmane.org@lists.ozlabs.org Sender: "Linuxppc-dev" List-Id: netdev.vger.kernel.org T24gVHVlLCBTZXAgMjIsIDIwMTUgYXQgMDQ6MzQ6MjVQTSArMDIwMCwgQ2hyaXN0b3BoZSBMZXJv eSB3cm90ZToKPiBAQCAtMTM3LDYgKzEzMCw0NSBAQCBzdGF0aWMgaW5saW5lIF9fd3N1bSBjc3Vt X2FkZChfX3dzdW0gY3N1bSwgX193c3VtIGFkZGVuZCkKPiAgI2VuZGlmCj4gIH0KPiAgCj4gKy8q Cj4gKyAqIFRoaXMgaXMgYSB2ZXJzaW9uIG9mIGlwX2NvbXB1dGVfY3N1bSgpIG9wdGltaXplZCBm b3IgSVAgaGVhZGVycywKPiArICogd2hpY2ggYWx3YXlzIGNoZWNrc3VtIG9uIDQgb2N0ZXQgYm91 bmRhcmllcy4gIGlobCBpcyB0aGUgbnVtYmVyCj4gKyAqIG9mIDMyLWJpdCB3b3JkcyBhbmQgaXMg YWx3YXlzID49IDUuCj4gKyAqLwo+ICtzdGF0aWMgaW5saW5lIF9fd3N1bSBpcF9mYXN0X2NzdW1f bm9mb2xkKGNvbnN0IHZvaWQgKmlwaCwgdW5zaWduZWQgaW50IGlobCkKPiArewo+ICsJdTMyICpw dHIgPSAodTMyICopaXBoICsgMTsKCmNvbnN0PwoKPiArI2lmZGVmIF9fcG93ZXJwYzY0X18KPiAr CXVuc2lnbmVkIGludCBpOwo+ICsJdTY0IHMgPSAqKF9fZm9yY2UgdTMyICopaXBoOwoKY29uc3Q/ CldoeSBfX2ZvcmNlPwoKPiArCXMgKz0gKHMgPj4gMzIpOwo+ICsJcmV0dXJuIChfX2ZvcmNlIF9f d3N1bSlzOwo+ICsKPiArI2Vsc2UKPiArCV9fd3N1bSBzdW0sIHRtcDsKPiArCj4gKwlhc20oIm10 Y3RyICUzOyIKPiArCSAgICAiYWRkYyAlMCwlNCwlNTsiCj4gKwkgICAgIjE6bHd6dSAlMSwgNCgl Mik7Igo+ICsJICAgICJhZGRlICUwLCUwLCUxOyIKPiArCSAgICAiYmRueiAxYjsiCj4gKwkgICAg ImFkZHplICUwLCUwOyIKPiArCSAgICA6ICI9ciIoc3VtKSwgIj1yIih0bXApLCAiK2IiKHB0cikK PiArCSAgICA6ICJyIihpaGwgLSAyKSwgInIiKCoodTMyICopaXBoKSwgInIiKCpwdHIpCj4gKwkg ICAgOiAiY3RyIiwgInhlciIsICJtZW1vcnkiKTsKClNwYWNlIGJldHdlZW4gIiBhbmQgKApTcGFj ZSBhZnRlciA6CmNvbnN0IGluIGNhc3QKCkkndmUgZml4ZWQgdGhlc2UgdXAgd2hpbGUgYXBwbHlp bmcuCgotU2NvdHQKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KTGludXhwcGMtZGV2IG1haWxpbmcgbGlzdApMaW51eHBwYy1kZXZAbGlzdHMub3psYWJzLm9y ZwpodHRwczovL2xpc3RzLm96bGFicy5vcmcvbGlzdGluZm8vbGludXhwcGMtZGV2