lkml.org 
[lkml]   [2019]   [Jul]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v7 10/25] arm64: compat: Add vDSO
    From
    Date
    Hi John,

    On 10/07/2019 05:02, John Stultz wrote:
    > On Fri, Jun 21, 2019 at 3:18 AM Vincenzo Frascino
    > <vincenzo.frascino@arm.com> wrote:
    >>
    >> Provide the arm64 compat (AArch32) vDSO in kernel/vdso32 in a similar
    >> way to what happens in kernel/vdso.
    >>
    >> The compat vDSO leverages on an adaptation of the arm architecture code
    >> with few changes:
    >> - Use of lib/vdso for gettimeofday
    >> - Implementation of syscall based fallback
    >> - Introduction of clock_getres for the compat library
    >> - Implementation of trampolines
    >> - Implementation of elf note
    >>
    >> To build the compat vDSO a 32 bit compiler is required and needs to be
    >> specified via CONFIG_CROSS_COMPILE_COMPAT_VDSO.
    >>
    >
    > Hey Vincenzo!
    > Congrats on getting this work merged, I know its been a long effort
    > over a number of years!
    >
    > Though unfortunately, it seems the arm64 vdso code that just landed is
    > breaking AOSP for me.
    >
    > I see a lot of the following errors:
    > 01-01 01:22:14.097 755 755 F libc : Fatal signal 11 (SIGSEGV),
    > code 1 (SEGV_MAPERR), fault addr 0x3cf2c96c in tid 755 (cameraserver),
    > pid 755 (cameraserver)
    > 01-01 01:22:14.112 759 759 F libc : Fatal signal 11 (SIGSEGV),
    > code 1 (SEGV_MAPERR), fault addr 0x3cf2c96c in tid 759
    > (android.hardwar), pid 759 (android.hardwar)
    > 01-01 01:22:14.120 756 756 F libc : Fatal signal 11 (SIGSEGV),
    > code 1 (SEGV_MAPERR), fault addr 0x3cf2c96c in tid 756 (drmserver),
    > pid 756 (drmserver)
    >
    > Which go away if I revert the vdso merge that went in via tip/timers.
    >
    > I tried to bisect things down a bit, but as some later fixes are
    > required (at one point, date was returning the start epoch and never
    > increasing), this hasn't worked too well. But I'm guessing since I
    > see: "CROSS_COMPILE_COMPAT not defined or empty, the compat vDSO will
    > not be built", and the system is half working, I'm guessing this is an
    > issue with just the 32bit code failing. While I can try to sort out
    > the proper CROSS_COMPILE_COMPAT in my build environment, I assume
    > userland shouldn't be crashing if that value isn't set.
    >
    > Any chance this issue has already been raised?
    >

    I do not have Android (bionic/libc) as part of my testing environment hence I
    never saw this issue. Thanks for reporting it.

    I am investigating the problem and will post a fix as soon as it is ready.

    As Will suggested, .config would help the debugging and I would like to ask to
    you to test my fix once it is ready. Is that OK for you?

    > thanks
    > -john
    >

    --
    Regards,
    Vincenzo

    \
     
     \ /
      Last update: 2019-07-10 11:48    [W:2.997 / U:0.388 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site