From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753077AbbFAMEN (ORCPT ); Mon, 1 Jun 2015 08:04:13 -0400 Received: from mail.emea.novell.com ([130.57.118.101]:38955 "EHLO mail.emea.novell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752942AbbFAMED convert rfc822-to-8bit (ORCPT ); Mon, 1 Jun 2015 08:04:03 -0400 Message-Id: <556C664F020000780007FB64@mail.emea.novell.com> X-Mailer: Novell GroupWise Internet Agent 14.0.1 Date: Mon, 01 Jun 2015 13:03:59 +0100 From: "Jan Beulich" To: , , Cc: , Subject: [PATCH] x86-64/entry: fold identical code paths Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8BIT Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org retint_kernel doesn't require %rcx to be pointing to thread info (anymore?), and the code on the two alternative paths is - not really surprisingly - identical. Signed-off-by: Jan Beulich Cc: Andy Lutomirski --- arch/x86/kernel/entry_64.S | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) --- 4.1-rc6/arch/x86/kernel/entry_64.S +++ 4.1-rc6-x86_64-entry-fold-code/arch/x86/kernel/entry_64.S @@ -744,7 +744,7 @@ ret_from_intr: testl $3,CS(%rsp) je retint_kernel /* Interrupt came from user space */ - +retint_user: GET_THREAD_INFO(%rcx) /* * %rcx: thread info. Interrupts off. @@ -1380,15 +1380,9 @@ ENTRY(error_exit) RESTORE_EXTRA_REGS DISABLE_INTERRUPTS(CLBR_NONE) TRACE_IRQS_OFF - GET_THREAD_INFO(%rcx) testl %eax,%eax jne retint_kernel - LOCKDEP_SYS_EXIT_IRQ - movl TI_flags(%rcx),%edx - movl $_TIF_WORK_MASK,%edi - andl %edi,%edx - jnz retint_careful - jmp retint_swapgs + jmp retint_user CFI_ENDPROC END(error_exit)