Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Strange memory issues on older glibC #103

Closed
mickymuis opened this issue May 19, 2017 · 4 comments
Closed

Strange memory issues on older glibC #103

mickymuis opened this issue May 19, 2017 · 4 comments

Comments

@mickymuis
Copy link

Compiling using `make static' and building the examples in the examples folder, running a random example gives me:

$ ./get_title_high_level ~/Downloads/repo_test/index.html.11.135.html
get_title_high_level: malloc.c:2451: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
Aborted (core dumped)

If I run valgrind I get

==31921== Invalid write of size 8
==31921== at 0x4E3BD70: pthread_mutex_init (pthread_mutex_init.c:83)
==31921== by 0x416A9A: mcsync_mutex_init (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x41B2AA: mcsync_init (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x41A7E8: mcobject_async_init (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x40C8C9: myhtml_token_create (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x415A38: myhtml_tree_init (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x40539D: main (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== Address 0x541f890 is 12 bytes after a block of size 4 alloc'd
==31921== at 0x4C29DB4: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==31921== by 0x41B29A: mcsync_init (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x41A7E8: mcobject_async_init (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x40C8C9: myhtml_token_create (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x415A38: myhtml_tree_init (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921== by 0x40539D: main (in /vol/home/s1407937/myhtml/bin/myhtml/get_title_high_level)
==31921==

And then aprox. 200 more errors.
This is on an old GLIBC (2.15) and GCC (4.6.3) on Ubuntu 12.04. I have not encountered this on other glibc versions. The compilation itself presents no problems whatsoever.

@lexborisov
Copy link
Owner

Hi @mickymuis
Thanks for report. I fix it soon. Try build library without threads:

make MyCORE_BUILD_WITHOUT_THREADS=YES

@lexborisov
Copy link
Owner

@mickymuis thanks!
Fixed!

@mickymuis
Copy link
Author

mickymuis commented May 19, 2017

Thank you for the quick response!

@lexborisov
Copy link
Owner

You are welcome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants