From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out5-smtp.messagingengine.com ([66.111.4.29]:44543 "EHLO out5-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727305AbeKKNOk (ORCPT ); Sun, 11 Nov 2018 08:14:40 -0500 Date: Sat, 10 Nov 2018 18:00:08 -0800 From: Greg KH To: "Maciej W. Rozycki" Cc: stable@vger.kernel.org, Ralf Baechle , Paul Burton Subject: Re: [PATCH 4.18] MIPS: memset: Fix CPU_DADDI_WORKAROUNDS `small_fixup' regression Message-ID: <20181111020008.GD18060@kroah.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sender: stable-owner@vger.kernel.org List-ID: On Tue, Oct 16, 2018 at 10:51:10PM +0100, Maciej W. Rozycki wrote: > Fix a commit 8a8158c85e1e ("MIPS: memset.S: EVA & fault support for > small_memset") regression and remove assembly warnings: > > arch/mips/lib/memset.S: Assembler messages: > arch/mips/lib/memset.S:243: Warning: Macro instruction expanded into multiple instructions in a branch delay slot > > triggering with the CPU_DADDI_WORKAROUNDS option set and this code: > > PTR_SUBU a2, t1, a0 > jr ra > PTR_ADDIU a2, 1 > > This is because with that option in place the DADDIU instruction, which > the PTR_ADDIU CPP macro expands to, becomes a GAS macro, which in turn > expands to an LI/DADDU (or actually ADDIU/DADDU) sequence: > > 13c: 01a4302f dsubu a2,t1,a0 > 140: 03e00008 jr ra > 144: 24010001 li at,1 > 148: 00c1302d daddu a2,a2,at > ... > > Correct this by switching off the `noreorder' assembly mode and letting > GAS schedule this jump's delay slot, as there is nothing special about > it that would require manual scheduling. With this change in place > correct code is produced: > > 13c: 01a4302f dsubu a2,t1,a0 > 140: 24010001 li at,1 > 144: 03e00008 jr ra > 148: 00c1302d daddu a2,a2,at > ... > > Signed-off-by: Maciej W. Rozycki > Fixes: 8a8158c85e1e ("MIPS: memset.S: EVA & fault support for small_memset") > Cc: stable@vger.kernel.org # 4.17+ > --- > Hi, > > This is a version (one I originally made actually) of commit 148b9aba99e0 > for 4.18-stable and before. No functional changes. Please apply. Now queued up, thanks. greg k-h