From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965127AbcFNBTu (ORCPT ); Mon, 13 Jun 2016 21:19:50 -0400 Received: from mail.kernel.org ([198.145.29.136]:52594 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753652AbcFNBTt (ORCPT ); Mon, 13 Jun 2016 21:19:49 -0400 Date: Tue, 14 Jun 2016 10:19:39 +0900 From: Masami Hiramatsu To: Steven Rostedt Cc: Ingo Molnar , linux-kernel@vger.kernel.org, Peter Zijlstra , Ananth N Mavinakayanahalli , Thomas Gleixner , "H . Peter Anvin" , Andy Lutomirski , systemtap@sourceware.org, Linus Torvalds , fenghua.yu@intel.com Subject: Re: [PATCH tip/master] [BUGFIX] kprobes/x86: Fix to clear TF bit in fault-on-single-stepping Message-Id: <20160614101939.66ad25484b1e46e895387b1c@kernel.org> In-Reply-To: <20160613192019.219a3a5f@gandalf.local.home> References: <20160611140648.25885.37482.stgit@devbox> <20160613191345.6bdeb535@gandalf.local.home> <20160613192019.219a3a5f@gandalf.local.home> X-Mailer: Sylpheed 3.4.3 (GTK+ 2.24.28; x86_64-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 13 Jun 2016 19:20:19 -0400 Steven Rostedt wrote: > On Mon, 13 Jun 2016 19:13:45 -0400 > Steven Rostedt wrote: > > > > > # cd /sys/kernel/debug/tracing > > > # echo p copy_user_enhanced_fast_string+5 > kprobe_events > > > # echo 1 > events/kprobes/enable > > > > > > And you'll see a kernel panic on do_debug(), since the debug > > > trap is not handled by kprobes. > > > > > > To fix this problem, we just need to clear the TF bit when > > > resetting running kprobe. > > > > > > > This should definitely be marked for stable, and I bisected it all the > > way down to this commit: f4cb1cc18f364d "x86-64, copy_user: Remove zero > > byte check before copy user buffer." I agree this is for stable. > > I reverted that commit and sure enough, this bug goes away. I'm not > > saying the revert should be done. I'm just doing an FYI, and showing how > > changes that appear to be a nice clean up can have subtle effects. I'm > > not even sure how that change caused this to be a problem with kprobes. > > > > Nevermind, reverting that commit only moved the location of the > "rep movsb" that you were placing the kprobe on. When I do: > > echo "p copy_user_enhanced_fast_string+9" > kprobe_events > > I get the same result. > > That means we need to make that stable tag even earlier. Yeah, I think it may never be tested from beginning, so more thant 10 years we have this issue on the kernel. I recommend this for all the stable/long term support kernels. Thank you, -- Masami Hiramatsu