[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: valgrind emacs
From: |
Stefan Monnier |
Subject: |
Re: valgrind emacs |
Date: |
Mon, 24 Mar 2008 14:50:31 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) |
> ==3816== Conditional jump or move depends on uninitialised value(s)
> ==3816== at 0x4D68E5: Fgarbage_collect (alloc.c:5004)
> ==3816== by 0x4EB922: Feval (eval.c:2248)
> ==3816== by 0x5047BB: readevalloop (lread.c:1791)
> ==3816== by 0x50614D: Fload (lread.c:1255)
> ==3816== by 0x4EBB5E: Feval (eval.c:2370)
> ==3816== by 0x5047BB: readevalloop (lread.c:1791)
> ==3816== by 0x50614D: Fload (lread.c:1255)
> ==3816== by 0x4EBB5E: Feval (eval.c:2370)
> ==3816== by 0x4EAC36: internal_condition_case (eval.c:1494)
> ==3816== by 0x4856A9: top_level_1 (keyboard.c:1387)
> ==3816== by 0x4EAD26: internal_catch (eval.c:1230)
> ==3816== by 0x48616E: command_loop (keyboard.c:1342)
No idea what this is about. Might be an actual bug.
> ==3816== Conditional jump or move depends on uninitialised value(s)
> ==3816== at 0x4D2A17: mem_find (alloc.c:3510)
> ==3816== by 0x4D36F4: mark_maybe_object (alloc.c:4108)
> ==3816== by 0x4D392D: mark_stack (alloc.c:4272)
> ==3816== by 0x4D6A55: Fgarbage_collect (alloc.c:5092)
> ==3816== by 0x4EB922: Feval (eval.c:2248)
> ==3816== by 0x5047BB: readevalloop (lread.c:1791)
> ==3816== by 0x50614D: Fload (lread.c:1255)
> ==3816== by 0x4EBB5E: Feval (eval.c:2370)
> ==3816== by 0x5047BB: readevalloop (lread.c:1791)
> ==3816== by 0x50614D: Fload (lread.c:1255)
> ==3816== by 0x4EBB5E: Feval (eval.c:2370)
> ==3816== by 0x4EAC36: internal_condition_case (eval.c:1494)
Most likely a non-issue: the conservative stack-scanning will look at
all slots in the stack, and of course some of those may not have
been initialized. But the arbitrary values read off the stack are
sanity-checked so that they're ignored unless they do correspond to
valid Lisp pointers. Maybe they're not really Lisp pointers, so the
behavior may be affected by the uninitialized value, but the only effect
it should have is to prevent garbage collection of some Lisp objects,
i.e. increase the memory footprint.
Stefan