From owner-freebsd-hackers@FreeBSD.ORG Mon Jun 21 22:00:35 2010 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1205) id 859DD1065670; Mon, 21 Jun 2010 22:00:35 +0000 (UTC) Date: Mon, 21 Jun 2010 22:00:35 +0000 From: Navdeep Parhar To: Andriy Gapon Message-ID: <20100621220035.GA8746@hub.freebsd.org> Mail-Followup-To: Andriy Gapon , freebsd-hackers@freebsd.org, freebsd-amd64@freebsd.org, John Baldwin References: <4C1F798C.7010204@freebsd.org> <201006211143.26459.jhb@freebsd.org> <4C1F8BDD.9010408@freebsd.org> <201006211610.45811.jhb@freebsd.org> <20100621204435.GA98177@hub.freebsd.org> <4C1FDAF9.3080808@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4C1FDAF9.3080808@freebsd.org> User-Agent: Mutt/1.4.2.1i Cc: freebsd-hackers@freebsd.org, freebsd-amd64@freebsd.org Subject: Re: amd64 kernel modules: mapping sections to addresses X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Jun 2010 22:00:35 -0000 On Tue, Jun 22, 2010 at 12:34:49AM +0300, Andriy Gapon wrote: > on 21/06/2010 23:44 Navdeep Parhar said the following: > > On Mon, Jun 21, 2010 at 04:10:45PM -0400, John Baldwin wrote: > >> On Monday 21 June 2010 11:57:17 am Andriy Gapon wrote: > >>> on 21/06/2010 18:43 John Baldwin said the following: > >>>> np@ has a patch to gdb to fix this for kgdb. I haven't committed it as it > >>>> patched gdb internals and wasn't in a kgdb-specific place, but I'm not > >> sure of > >>>> a better way to fix kgdb. > >>> Oh, yes, section mapping is done in common gdb code. > >>> Perhaps kld.c shouldn't call build_section_table, but directly call > >>> bfd_map_over_sections with a custom variant of add_to_section_table? > >>> Can you please share the patch? > >> It was deeper level than that, I'd have to dig it up. > > > > I'm using this patch these days: > > http://people.freebsd.org/~np/kgdb+kld+amd64.diff > > > > The changes to the kernel linker were not required originally. See this > > for why they had to be made: > > http://lists.freebsd.org/pipermail/freebsd-hackers/2009-November/030093.html > > > > The patch is quite crude and I have no idea how it behaves on other > > platforms. > > Thanks a lot! These are exact issues that I hit and the patches are what I > think they should be, take or give. I don't think they are really crude. > I will try to get them committed. > > Kernel linker change is good as is, I'd just like to move the zero size check > before the switch statement. I'm not so sure about this. There is code inside the second switch that runs whether sh_size is 0 or not. Either all of it is pointless code (when sh_size is 0) or or you'll make sure that it still runs, right? Regards, Navdeep > > gdb change - I'd rather do it via kld_current_sos, > kld_relocate_section_addresses. I'd like to avoid changing common gdb code for > a variety of reasons. > > -- > Andriy Gapon