Date: Mon, 21 Jun 2010 22:00:35 +0000 From: Navdeep Parhar <np@FreeBSD.org> To: Andriy Gapon <avg@freebsd.org> Cc: freebsd-hackers@freebsd.org, freebsd-amd64@freebsd.org Subject: Re: amd64 kernel modules: mapping sections to addresses Message-ID: <20100621220035.GA8746@hub.freebsd.org> In-Reply-To: <4C1FDAF9.3080808@freebsd.org> 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>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100621220035.GA8746>