On Tue, Jan 18, 2011 at 6:51 AM, Wang Jiong <[email protected]> wrote: > Dear all: > > Currently I am upgrading a gcc target from 4.0.3 to 4.3.5 > After test, I have found that gcc 4.3.5 will employee the .data.rel.ro > section and this has caused trouble when work with uclibc 0.9.31 > 4.3.5 will generate code like > > > > .type __FUNCTION__.4211, @object > .size __FUNCTION__.4211, 21 > __FUNCTION__.4211: > .string "_dl_get_ready_to_run" > .align 2 > > .section .data.rel.ro > .align 2 > .LC108: > .word __FUNCTION__.4211 > .align 2 > > t.lw $6,%got_page(.LC108)($28) > s.addiu $2,$6,%got_ofst(.LC108) > t.lw $6,0($2) // $6 now contains the value of ".word __FUNCTION__.4211" > and we wish it will point to the string "_dl_get_ready_to_run", but only > after it's also updated by ldso to the relocated value, otherwise it > will be wrong > > > the address of .LC108 and __FUNCTION__.4211 alone will be relocated by > ldso correctly while LC108's contents will not > > My problem is related with .data.rel.ro? and have uclibc 0.9.31 > supportted .data.rel.ro yet? >
yes uclibc ldso does support RELRO, can you try to reproduce it with git master and if it still fails care to provide a small testcase > > Thanks in advance > > Best, > KwongYuan > _______________________________________________ > uClibc mailing list > [email protected] > http://lists.busybox.net/mailman/listinfo/uclibc > _______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc
