From owner-freebsd-arm@FreeBSD.ORG Sun Dec 22 10:47:36 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 15FDDE71 for ; Sun, 22 Dec 2013 10:47:36 +0000 (UTC) Received: from nibbler.fubar.geek.nz (nibbler.fubar.geek.nz [199.48.134.198]) by mx1.freebsd.org (Postfix) with ESMTP id E798D1312 for ; Sun, 22 Dec 2013 10:47:35 +0000 (UTC) Received: from bender.Home (97e07ae8.skybroadband.com [151.224.122.232]) by nibbler.fubar.geek.nz (Postfix) with ESMTPSA id 952025DFFE; Sun, 22 Dec 2013 10:47:28 +0000 (UTC) Date: Sun, 22 Dec 2013 10:47:21 +0000 From: Andrew Turner To: Howard Su Subject: Re: [PATCH] Add stack unwind support for the functions in .ko Message-ID: <20131222104721.22b1bd45@bender.Home> In-Reply-To: References: <20131215173042.0dead636@bender.Home> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: freebsd-arm X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2013 10:47:36 -0000 On Sun, 22 Dec 2013 17:50:31 +0800 Howard Su wrote: > here is the new version which address the print registers out problem. There are a number of style bugs in this patch: make sure you limit lines to 80 characters; indentation should use tabs, followed by 4 spaces if you need to split a long line; braces should be at the end of a line when used with an if, for or while statement. You've added the A0 register. I don't see where it is defined by ARM as a register name or synonym. It is also used to adjust which bit from a bitmask we check. This would mean we read the wrong bit and may get a register that was never updated. Because of this we will never read r0. Andrew > > On Monday, December 16, 2013, Warner Losh wrote: > > > > > On Dec 15, 2013, at 4:56 PM, Howard Su wrote: > > > > > On Monday, December 16, 2013, Andrew Turner wrote: > > > > > >> On Mon, 9 Dec 2013 22:44:14 +0800 > > >> Howard Su > > > >> wrote: > > >> > > >>> Here is a new version which solve the unreadable $a problem. > > >>> (the fix is in ddb/db_main.c in the end of the patch.) > > >>> > > >>> I attached the diff for review. > > >> > > >> I can't comment on the MD parts of the code, but the ARM change > > >> looks good. My only request is to add a kernel option to turn on > > >> printing the registers in the stack trace as it has been useful > > >> for tracking down bugs. > > >> > > > I read the MD code of MIPS. seems it faces the same situation > > > like arm (register pass parameter). I will follow its pattern to > > > print out > > register. > > > better than an option? > > > > I thought MIPS printed the args from those registers as args and > > ARM was the odd man out... > > > > Warner > > > > >