#78 daemon die with assertion failure

closed-fixed
None
7
2002-11-06
2002-09-26
No

problem firstly reported by John then by Will.

daemon die suddenly on assertion failure in
libd/db-insert.c
most of the time on /bin/bash samples files and
page->count != 0
asserted.

The bug can be reproduced in a few minutes, starting
profling
with --separate-samples invoking script creating a lot
of short
process such a make of gcc and in parralel a continuous
op_time -k + a continuous ps aux | grep oprofiled

Problem occurs because we fail to recognize some image
as identical to an existing image struct so libdb open mmap
mrremap some samples files mutltiple time. The kernel
doesn't
ensure coherency of these page because it doesn't reuse the
same physical page for the second mapping when the kernel
drop these page they are written in sample file so samples
files can contain page 0 coming from first mapping and page
1 coming from second mapping then the db_tree becomes
inconsistent and libdb miserabily fails...

This is fixed in current cvs. This bugs has been introduced
by fixing #584723 (ChangeLog is not very clear, I think
the bug is in 0.3 release *sighs*)

regards,
Phil

Discussion

  • Philippe Elie

    Philippe Elie - 2002-11-01
    • status: open --> open-fixed
     
  • John Levon

    John Levon - 2002-11-06
    • status: open-fixed --> closed-fixed
     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks