Date: Mon, 28 Jul 2014 15:37:28 -0400 From: suresh gumpula <gsuryacse7k@gmail.com> To: Mateusz Guzik <mjguzik@gmail.com>, suresh gumpula <gsuryacse7k@gmail.com>, "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org> Subject: Re: Allocation/free history Message-ID: <CAJOqHmimJcU1HUhF8=JOOj64aY34uQsNvytnS7N1YL=qSx66hQ@mail.gmail.com> In-Reply-To: <20140728191950.GA9781@dft-labs.eu> References: <CAJOqHmgO55L-D0_7zpnC0jFR%2BY1KWBzFwQirPfknhNeHzd0asg@mail.gmail.com> <20140728191950.GA9781@dft-labs.eu>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, I am aware of redone(9). I am talking about PC allocation history of objects. Do we have something like that ? Thanks Suresh On Mon, Jul 28, 2014 at 3:19 PM, Mateusz Guzik <mjguzik@gmail.com> wrote: > On Mon, Jul 28, 2014 at 01:40:10PM -0400, suresh gumpula wrote: > > Hi, > > Knowing the PC of an allocation is very usefull in debugging. Having > the > > PC hash table and storing the pc hash either with an object itself( at > the > > end) or allocate an exra structure to hold the > > hash index help us find out who/where an object was allocated. We > > already have something like this in our own operating system and has > been a > > useful thing in debugging. > > BSD allocator uses power of 2, so storing at the end of an object might > be > > wasting lot of memory with large objects. > > > > It appears we don=E2=80=99t have something like this in current FBSD co= deline and > > would like to work on this ? Any comments please? > > > > > > It would be something like below. 8 bytes at the end of each object has > > fecepost which is usefull in finding overwrites and 2 hash indices to t= he > > PC table to track allocation history. > > (kgdb-amd64-7.4-87) x/40w 0xffffff153728b038 > > 0xffffff153728b038: 0xf6970a05 0x06cb7e0c 0x305a134a > > 0x831c18bb > > 0xc0000bed 0x134a2115 > > > > 0xffffff153728b050: 0x85687ef8 0xffffffff 0x00000001 > > 0x83192201 > > 0xc0000bed 0x1741143b > > > > See redzone(9). > > -- > Mateusz Guzik <mjguzik gmail.com> >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJOqHmimJcU1HUhF8=JOOj64aY34uQsNvytnS7N1YL=qSx66hQ>