drop direct use of stat syscalls in fchmodat
[musl] / src / env / __init_tls.c
index 5f12500..a93141e 100644 (file)
@@ -67,7 +67,7 @@ void *__copy_tls(unsigned char *mem)
        }
 #endif
        dtv[0] = libc.tls_cnt;
-       td->dtv = td->dtv_copy = dtv;
+       td->dtv = dtv;
        return td;
 }
 
@@ -115,7 +115,8 @@ static void static_init_tls(size_t *aux)
                & (main_tls.align-1);
 #ifdef TLS_ABOVE_TP
        main_tls.offset = GAP_ABOVE_TP;
-       main_tls.offset += -GAP_ABOVE_TP & (main_tls.align-1);
+       main_tls.offset += (-GAP_ABOVE_TP + (uintptr_t)main_tls.image)
+               & (main_tls.align-1);
 #else
        main_tls.offset = main_tls.size;
 #endif