Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Sun, 16 Nov 2014 09:45:12 +0100
From: Takashi Iwai <tiwai@...e.de>
To: John Spencer <maillist-alsa@...fooze.de>
Cc: alsa-devel <alsa-devel@...a-project.org>,
	sabotage@...ts.openwall.com
Subject: Re: [alsa-devel] [PATCH] snd_dlsym: only do versioning checks if built	--with-versioning

At Sat, 15 Nov 2014 13:55:54 +0100,
John Spencer wrote:
> 
>  From 291553a0132936611d48f41e924601dff8941537 Mon Sep 17 00:00:00 2001
> From: John Spencer <maillist-alsa@...fooze.de>
> Date: Sat, 15 Nov 2014 13:41:00 +0100
> Subject: [PATCH] snd_dlsym: only do versioning checks if built 
> --with-versioning
> 
> a combination of some of the following garbage collecting LD/CFLAGS
> -Os -g0 -fdata-sections -ffunction-sections -s -Wl,--gc-sections
> -fno-unwind-tables -fno-asynchronous-unwind-tables
> causes the symbol versioning marker symbols to be removed from BSS
> since they're otherwise unreferenced. this causes dlsym failing to
> find them which results in runtime breakage:
> 
> $ alsamixer
> ALSA lib dlmisc.c:142:(snd_dlsym_verify) unable to verify version for 
> symbol snd_config_hook_load
> ALSA lib conf.c:3328:(snd_config_hooks_call) symbol snd_config_hook_load 
> is not defined inside (null)
> ALSA lib conf.c:3788:(snd_config_update_r) hooks failed, removing 
> configuration
> cannot open mixer: No such device or address
> 
> correct DSO:
> $ objdump -T libasound.so.2.strip | grep 
> _snd_config_hook_load_dlsym_config_hook_001
> 001196bc g    DO .bss   00000001 _snd_config_hook_load_dlsym_config_hook_001
> 
> incorrect DSO:
> $ objdump -T libs/libasound.so.2 | grep 
> _snd_config_hook_load_dlsym_config_hook_001
> 00000000 g    DO *ABS*  00000001 _snd_config_hook_load_dlsym_config_hook_001
> 
> since alsa was built with --without-versioning, doing those versioning
> checks at all is unnecessary and harmful and thus now disabled in this case.
> 
> Signed-off-by: John Spencer <maillist-alsa@...fooze.de>

Thanks, applied.


Takashi

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.