[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d9b171d5-896c-c4f7-eb2d-182ce2ce2d30@arm.com>
Date: Wed, 10 Jul 2019 10:47:16 +0100
From: Vincenzo Frascino <vincenzo.frascino@....com>
To: John Stultz <john.stultz@...aro.org>
Cc: linux-arch@...r.kernel.org,
linux-arm-kernel <linux-arm-kernel@...ts.infradead.org>,
lkml <linux-kernel@...r.kernel.org>, linux-mips@...r.kernel.org,
linux-kselftest@...r.kernel.org, Shuah Khan <shuah@...nel.org>,
Andre Przywara <andre.przywara@....com>,
Arnd Bergmann <arnd@...db.de>,
Huw Davies <huw@...eweavers.com>,
Catalin Marinas <catalin.marinas@....com>,
Daniel Lezcano <daniel.lezcano@...aro.org>,
Will Deacon <will.deacon@....com>,
Russell King <linux@...linux.org.uk>,
Ralf Baechle <ralf@...ux-mips.org>,
Mark Salyzyn <salyzyn@...roid.com>,
Paul Burton <paul.burton@...s.com>,
Dmitry Safonov <0x7f454c46@...il.com>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
Thomas Gleixner <tglx@...utronix.de>,
Shijith Thotton <sthotton@...vell.com>,
Peter Collingbourne <pcc@...gle.com>
Subject: Re: [PATCH v7 10/25] arm64: compat: Add vDSO
Hi John,
On 10/07/2019 05:02, John Stultz wrote:
> On Fri, Jun 21, 2019 at 3:18 AM Vincenzo Frascino
> <vincenzo.frascino@....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
Powered by blists - more mailing lists