This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [v3] libstdc++/24469


On 3/16/06, Paolo Carlini <pcarlini@suse.de> wrote:
> Richard Guenther wrote:
>
> >yes, I did study the PR in question (24469), but even from reading
> >http://gcc.gnu.org/ml/libstdc++/2004-07/msg00095.html I cannot reproduce the
> >failure in question by examining the source (I cannot find users of _M_thread_id
> >in either mt_allocator.cc or mt_allocator.h apart from two setters on
> >the v7 branch).
> >
> >
> Please look closer ;) (Considering mainline, for the moment) just grep
> for the various places where ._M_used[*] is changed. The point is simply
> that in one specific place, in _M_reclaim_block, the index is
> __block->_M_thread_id, which in general is != __thread_id, thus we are
> fiddling with another thread, not the one which is returning memory to
> the pool.

Sure - I specifically looked at v7 branch because Benjamins patch was for v7,
especially _not_ v3.  And in v7, _M_thread_id is only set, not read. 
My argument is
that for v7(!) branch, the patch is not necessary.  I did not look in
detail at v3 branch,
but I will do so now (before just posting an extrapolation of the v7
analysis...)

Richard.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]