Hi Huacai,
On Thu, Sep 27, 2018 at 02:26:42PM +0800, 陈华才 wrote:
I think this patch can solve my problem, but I have something to say:
1, VDSO randomization is introduced in commit ccd3988086364837d0c0fb4563d7 in 3.19. So this patch should backported as early as 3.19.
Ugh, OK so the not-really-a-VDSO page that we called VDSO before we really had a VDSO was randomly located too. A backport to that would need to be significantly different.
However the only currently supported LTS kernel older than 4.4 (which introduced the real VDSO) is 3.16. 3.16 didn't support the randomization anyway, I don't think it's worth the effort to backport any further than 4.4.
2, vdso_base() may need to be modified for 4.4, because 4.4 has no delay slot emulation.
Yes I know. The GIC code changed in 4.14 too so backports will need to take that into account too.
3, Maybe it is better to set VDSO_RANDOMIZE_SIZE to 16MB for 64bit kernel, because commit ccd3988086364837d0c0fb4563d7 use 16MB.
It actually uses 256MB for MIPS64. Since address space isn't scarce for MIPS64 I'll go with that.
Thanks, Paul