hm.  i just ran mdb tests under truss as follows:

truss -f -t \!all -u libproc::core_iter_mapping,map_iter -u 
librtld_db::rd_loadobj_iter <mdb command>

and tried attaching mdb to both a core file and a live process, and in
both cases the callbacks were correctly invoked.  so i don't think that
6862967 is realted to the problem i was seeing.

that said, i tried looking at your core file (pointed to from the bug
report) and that failed spectacularly.  interestingly enough i was
able to read the core file on an s10 system.

hence i'll bet that the issue you were seeing was introduced in snv_108
by:

        6686372 ld.so.1 should use mmapobj(2)
        6726108 dlopen() performance could be improved.

that put back significantly changed the internal structures used by ld,
and there by it created a ld / librtld_db flag day.  ie, you can no
longer use use a post snv_108 librtld_db to look at core files
containing a pre-snv_108 version of ld.

in case your wondering how i know about this, i recently discovered this
issue affects certain brands.  prior to snv_108, you could use the nevada
librtld_db to access s8 core files.  but that is no longer the case.

ed

On Wed, Jul 22, 2009 at 05:02:37PM -0700, Adam Leventhal wrote:
> Hey Ed,
>
> Is it possible that the bug you hit is really a consequence of this:
>
>   6862967 rd_loadobj_iter() failing for core files
>
> Or are they only spuriously related?
>
> Adam
>
> On Wed, Jul 22, 2009 at 04:52:55PM -0700, Edward Pilatowicz wrote:
> > hey all,
> >
> > i filed the following bug this morning (and hence it isn't visible on
> > b.o.o yet):
> >     6863263 libproc doesn't access in-core elf data correctly
> >
> > i coded up a fix and i'm looking for a code review.
> >     http://cr.opensolaris.org/~edp/onnv-libproc/
> >
> > thanks
> > ed
> > _______________________________________________
> > mdb-discuss mailing list
> > mdb-discuss at opensolaris.org
>
> --
> Adam Leventhal, Fishworks                     http://blogs.sun.com/ahl

Reply via email to