svn commit: r217833 - head/lib/libelf

Bjoern A. Zeeb bzeeb-lists at lists.zabbadoz.net
Tue Jan 25 19:35:07 UTC 2011


On Tue, 25 Jan 2011, Alexander Kabaev wrote:

> Author: kan
> Date: Tue Jan 25 19:17:50 2011
> New Revision: 217833
> URL: http://svn.freebsd.org/changeset/base/217833
>
> Log:
>  Do not allocate buffer to hold data for zero-sized sections.

Thanks.

I understand that this will stop all the WITH_CTF barfing:)

The error also had the side effect that objects ended up way biggre
than they should be; about +50 to +125% depending on what you look at.

..
ERROR: ctfmerge: snd_maestro.ko.debug: Cannot get sect .note.GNU-stack data: Invalid data buffer descriptor
ERROR: ctfmerge: snd_maestro3.ko.debug: Cannot get sect .note.GNU-stack data: Invalid data buffer descriptor
ERROR: ctfmerge: snd_neomagic.ko.debug: Cannot get sect .note.GNU-stack data: Invalid data buffer descriptor
ERROR: ctfmerge: snd_sb16.ko.debug: Cannot get sect .note.GNU-stack data: Invalid data buffer descriptor
ERROR: ctfmerge: snd_sb8.ko.debug: Cannot get sect .note.GNU-stack data: Invalid data buffer descriptor
ERROR: ctfmerge: snd_sbc.ko.debug: Cannot get sect .note.GNU-stack data: Invalid data buffer descriptor
ERROR: ctfmerge: snd_solo.ko.debug: Cannot get sect .note.GNU-stack data: Invalid data buffer descriptor
..


> Modified:
>  head/lib/libelf/elf_data.c
>
> Modified: head/lib/libelf/elf_data.c
> ==============================================================================
> --- head/lib/libelf/elf_data.c	Tue Jan 25 19:05:46 2011	(r217832)
> +++ head/lib/libelf/elf_data.c	Tue Jan 25 19:17:50 2011	(r217833)
> @@ -115,8 +115,10 @@ elf_getdata(Elf_Scn *s, Elf_Data *d)
> 	d->d_type    = elftype;
> 	d->d_version = e->e_version;
>
> -	if (sh_type == SHT_NOBITS)
> +	if (sh_type == SHT_NOBITS || sh_size == 0) {
> +	        STAILQ_INSERT_TAIL(&s->s_data, d, d_next);
> 		return (d);
> +        }
>
> 	if ((d->d_buf = malloc(msz*count)) == NULL) {
> 		(void) _libelf_release_data(d);
>

-- 
Bjoern A. Zeeb                                 You have to have visions!
         <ks> Going to jail sucks -- <bz> All my daemons like it!
   http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/jails.html


More information about the svn-src-all mailing list