This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug nscd/9750] nscd gc() segmentation fault by estimation failure of alloca()'s stack usage
- From: "j-nomura at ce dot jp dot nec dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sources dot redhat dot com
- Date: 29 Jan 2009 04:31:20 -0000
- Subject: [Bug nscd/9750] nscd gc() segmentation fault by estimation failure of alloca()'s stack usage
- References: <20090116114233.9750.j-nomura@ce.jp.nec.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From j-nomura at ce dot jp dot nec dot com 2009-01-29 04:31 -------
Thank you for the fix on x86_64, but I confirmed the same problem occurs on i386
system.
(alloca() pads the extra 16 bytes on Fedora 9 i386, too.
May also on other archs but I don't have machines to check with.)
Could you put a "%%esp" version of the stackinfo_get_sp/stackinfo_sub_sp macros
to sysdeps/i386, too?
http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/x86_64/stackinfo.h.diff?r1=1.1&r2=1.2&cvsroot=glibc
Also, the following fallback macro in alloca.h doesn't compile anyway:
# define alloca_account(size, avar) \
({ size_t s__ = (size); \
avar += size__; \
__alloca (size__); })
http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/include/alloca.h.diff?r1=1.8&r2=1.9&cvsroot=glibc
Should "s__" be "size__"?
--
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Resolution|FIXED |
http://sourceware.org/bugzilla/show_bug.cgi?id=9750
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.