diff options
| author | Rich Felker <dalias@aerifal.cx> | 2019-08-11 11:57:38 -0400 | 
|---|---|---|
| committer | Rich Felker <dalias@aerifal.cx> | 2019-08-11 11:57:38 -0400 | 
| commit | 71af5309874269bcc9e4b84ea716fab33d888c1d (patch) | |
| tree | bc1a8838513dac5d5f527e4ec301bf097cf67a63 | |
| parent | ffab43602b5900c86b7040abdda8ccf6cdec95f5 (diff) | |
| download | musl-71af5309874269bcc9e4b84ea716fab33d888c1d.tar.gz | |
ldso: remove redundant runtime checks in static TLS logic
as a result of commit ffab43602b5900c86b7040abdda8ccf6cdec95f5,
static_tls_cnt is now valid during relocations at program startup, so
it's no longer necessary to condition the check against static_tls_cnt
on this being a runtime (dlopen) relocation.
| -rw-r--r-- | ldso/dynlink.c | 4 | 
1 files changed, 2 insertions, 2 deletions
| diff --git a/ldso/dynlink.c b/ldso/dynlink.c index 93ef3633..531811cc 100644 --- a/ldso/dynlink.c +++ b/ldso/dynlink.c @@ -390,7 +390,7 @@ static void do_relocs(struct dso *dso, size_t *rel, size_t rel_size, size_t stri  		tls_val = def.sym ? def.sym->st_value : 0;  		if ((type == REL_TPOFF || type == REL_TPOFF_NEG) -		    && runtime && def.dso->tls_id > static_tls_cnt) { +		    && def.dso->tls_id > static_tls_cnt) {  			error("Error relocating %s: %s: initial-exec TLS "  				"resolves to dynamic definition in %s",  				dso->name, name, def.dso->name); @@ -450,7 +450,7 @@ static void do_relocs(struct dso *dso, size_t *rel, size_t rel_size, size_t stri  #endif  		case REL_TLSDESC:  			if (stride<3) addend = reloc_addr[1]; -			if (runtime && def.dso->tls_id > static_tls_cnt) { +			if (def.dso->tls_id > static_tls_cnt) {  				struct td_index *new = malloc(sizeof *new);  				if (!new) {  					error( | 
