From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752583Ab1ITR52 (ORCPT ); Tue, 20 Sep 2011 13:57:28 -0400 Received: from mtagate3.uk.ibm.com ([194.196.100.163]:56241 "EHLO mtagate3.uk.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751001Ab1ITR5Z (ORCPT ); Tue, 20 Sep 2011 13:57:25 -0400 Date: Tue, 20 Sep 2011 18:13:10 +0100 From: Stefan Hajnoczi To: Srikar Dronamraju Cc: Peter Zijlstra , Ingo Molnar , Steven Rostedt , Linux-mm , Arnaldo Carvalho de Melo , Linus Torvalds , Masami Hiramatsu , Hugh Dickins , Christoph Hellwig , Andi Kleen , Thomas Gleixner , Jonathan Corbet , Oleg Nesterov , Andrew Morton , Jim Keniston , Roland McGrath , Ananth N Mavinakayanahalli , LKML Subject: Re: [PATCH v5 3.1.0-rc4-tip 8/26] x86: analyze instruction and determine fixups. Message-ID: <20110920171310.GC27959@stefanha-thinkpad.localdomain> References: <20110920115938.25326.93059.sendpatchset@srdronam.in.ibm.com> <20110920120127.25326.71509.sendpatchset@srdronam.in.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20110920120127.25326.71509.sendpatchset@srdronam.in.ibm.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Sep 20, 2011 at 05:31:27PM +0530, Srikar Dronamraju wrote: > > The instruction analysis is based on x86 instruction decoder and > determines if an instruction can be probed and determines the necessary > fixups after singlestep. Instruction analysis is done at probe > insertion time so that we avoid having to repeat the same analysis every > time a probe is hit. > > Signed-off-by: Jim Keniston > Signed-off-by: Srikar Dronamraju > --- > arch/x86/Kconfig | 3 > arch/x86/include/asm/uprobes.h | 42 ++++ > arch/x86/kernel/Makefile | 1 > arch/x86/kernel/uprobes.c | 385 ++++++++++++++++++++++++++++++++++++++++ > 4 files changed, 431 insertions(+), 0 deletions(-) > create mode 100644 arch/x86/include/asm/uprobes.h > create mode 100644 arch/x86/kernel/uprobes.c You've probably thought of this but it would be nice to skip XOL for nops. This would be a common case with static probes (e.g. sdt.h) where the probe template includes a nop where we can easily plant int $0x3. Perhaps a check can be added to the analysis so that after calling the filter/handler we can immediately continue the process instead of executing the (useless) nop out-of-line. Stefan