From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752500AbcF1Qqv (ORCPT ); Tue, 28 Jun 2016 12:46:51 -0400 Received: from mail-wm0-f48.google.com ([74.125.82.48]:36658 "EHLO mail-wm0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752128AbcF1Qqt (ORCPT ); Tue, 28 Jun 2016 12:46:49 -0400 Date: Tue, 28 Jun 2016 18:46:34 +0200 From: Rabin Vincent To: Namhyung Kim Cc: kvm@vger.kernel.org, Steven Rostedt , "linux-kernel@vger.kernel.org" , Minchan Kim Subject: Re: [QUESTION] Is there a better way to get ftrace dump on guest? Message-ID: <20160628164634.GA4202@debian> References: <20160628062514.GA4674@danjae.aot.lge.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.6.0 (2016-04-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jun 28, 2016 at 03:33:18PM +0900, Namhyung Kim wrote: > On Tue, Jun 28, 2016 at 3:25 PM, Namhyung Kim wrote: > > I'm running some guest machines for kernel development. For debugging > > purpose, I use lots of trace_printk() since it's faster than normal > > printk(). When kernel crash happens the trace buffer is printed on > > console (I set ftrace_dump_on_oops) but it takes too much time. I > > don't want to reduce the size of ring buffer as I want to collect the > > debug info as much as possible. And I also want to see trace from all > > cpu so 'ftrace_dump_on_oop = 2' is not an option. > > > > I know the kexec/kdump (and the crash tool) can dump and analyze the > > trace buffer later. But it's cumbersome to do it everytime and more > > importantly, I don't want to spend the memory for the crashkernel. Assuming you're using QEMU: QEMU has a dump-guest-memory command which can be used to dump the guest's entire memory to an ELF which can be loaded by the crash utility to extract the trace buffer. This doesn't require kexec/kdump or any other support from the guest kernel. It's apparently even possible to run QEMU with the guest memory in a file and load that to crash directly, although this is not something I've had a chance to try out myself: https://github.com/crash-utility/crash/commit/89ed9d0a7f7da4578294a492c1ad857244ce7352