From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754739AbbDTLl3 (ORCPT ); Mon, 20 Apr 2015 07:41:29 -0400 Received: from smtp-out6.electric.net ([192.162.217.186]:59821 "EHLO smtp-out6.electric.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754520AbbDTLl1 (ORCPT ); Mon, 20 Apr 2015 07:41:27 -0400 From: David Laight To: "'Christophe Leroy'" , Benjamin Herrenschmidt , Paul Mackerras , "Michael Ellerman" , "scottwood@freescale.com" CC: "linuxppc-dev@lists.ozlabs.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH 07/11] powerpc/8xx: macro for handling CPU15 errata Thread-Topic: [PATCH 07/11] powerpc/8xx: macro for handling CPU15 errata Thread-Index: AQHQeyvhNipWi/3W1kuZmSk4Oj+3Ip1Vxh0A Date: Mon, 20 Apr 2015 11:40:10 +0000 Message-ID: <063D6719AE5E284EB5DD2968C1650D6D1CB22366@AcuExch.aculab.com> References: <20150420052637.185801A242C@localhost.localdomain> In-Reply-To: <20150420052637.185801A242C@localhost.localdomain> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.202.99.200] Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-Outbound-IP: 213.249.233.130 X-Env-From: David.Laight@ACULAB.COM X-PolicySMART: 3396946, 3397078 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by nfs id t3KBfbuL007951 From: Christophe Leroy > Sent: 20 April 2015 06:27 > Having a macro will help keep clear code. ... > * We have to use the MD_xxx registers for the tablewalk because the > * equivalent MI_xxx registers only perform the attribute functions. > */ > + > +#ifdef CONFIG_8xx_CPU15 > +#define DO_8xx_CPU15(tmp, addr) \ > + addi tmp, addr, PAGE_SIZE; \ > + tlbie tmp; \ > + addi tmp, addr, PAGE_SIZE; \ > + tlbie tmp > +#else > +#define DO_8xx_CPU15(tmp, addr) > +#endif I'm sure I've spotted the same obvious error in the above before. I'd also suggest calling it 'invalidate_adjacent_pages' - since that it what it does. I also guess that the execution time of 'tlbie' is non-trivial. So you might as well get rid of the temporary register and put an 'addi' to reset 'addr' at the end. David ÿôèº{.nÇ+‰·Ÿ®‰­†+%ŠËÿ±éݶ¥Šwÿº{.nÇ+‰·¥Š{±þG«�éÿŠ{ayºʇڙë,j­¢f£¢·hš�ï�êÿ‘êçz_è®(­éšŽŠÝ¢j"�ú¶m§ÿÿ¾«þG«�éÿ¢¸?™¨è­Ú&£ø§~�á¶iO•æ¬z·švØ^¶m§ÿÿà ÿ¶ìÿ¢¸?–I¥