Re: Linux 4.18-rc7
From: Kirill A. Shutemov
Date: Mon Jul 30 2018 - 09:01:44 EST
On Mon, Jul 30, 2018 at 12:17:46PM +0530, Amit Pundir wrote:
> On Mon, 30 Jul 2018 at 03:39, Linus Torvalds
> <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> >
> > So unless something odd happens, this should be the last rc for 4.18.
> >
> > Nothing particularly odd happened this last week - we got the usual
> > random set of various minor fixes all over. About two thirds of it is
> > drivers - networking, staging and usb stands out, but there's a little
> > bit of stuff all over (clk, block, gpu, nvme..).
> >
> > Outside of drivers, the bulk is some core networking stuff, with
> > random changes elsewhere (minor arch updates, filesystems, core
> > kernel, test scripts).
> >
> > The appended shortlog gives a flavor of the details.
> >
> > Linus
> >
> > ---
> > Kirill A. Shutemov (3):
> > mm: introduce vma_init()
> > mm: use vma_init() to initialize VMAs on stack and data segments
> > mm: fix vma_is_anonymous() false-positives
>
> Hi, I have run into AOSP userspace crash with v4.18-rc7, leading to
> above mm patches. bfd40eaff5ab ("mm: fix vma_is_anonymous()
> false-positives") to be specific. The same userspace is working fine
> with v4.18-rc6.
>
> I didn't yet look into what is going wrong from userspace point of
> view, but I just wanted to give you a heads up on this. I'll be happy
> to assist in further debugging/diagnosis if required.
Youling reported basically the same bug with zygote crashing, but on
x86-64.
I think I missed vma_set_anonymous() somewhere, but I fail to see where.
Could you check if removing 'vma->vm_ops = &dummy_vm_ops;" from vma_init
makes the problem go away?
Any chance the code that crashes can be run under strace?
> Here is the crash log from logcat, if it helps:
> F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
> F DEBUG : Build fingerprint:
> 'Android/db410c32_only/db410c32_only:Q/OC-MR1/102:userdebug/test-key
> F DEBUG : Revision: '0'
> F DEBUG : ABI: 'arm'
> F DEBUG : pid: 2261, tid: 2261, name: zygote >>> zygote <<<
> F DEBUG : signal 7 (SIGBUS), code 2 (BUS_ADRERR), fault addr 0xec00008
> .. <snip> ..
> F DEBUG : backtrace:
> F DEBUG : #00 pc 00001c04 /system/lib/libc.so (memset+48)
> F DEBUG : #01 pc 0010c513 /system/lib/libart.so
> (create_mspace_with_base+82)
> F DEBUG : #02 pc 0015c601 /system/lib/libart.so
> (art::gc::space::DlMallocSpace::CreateMspace(void*, unsigned int,
> unsigned int)+40)
> F DEBUG : #03 pc 0015c3ed /system/lib/libart.so
> (art::gc::space::DlMallocSpace::CreateFromMemMap(art::MemMap*,
> std::__1::basic_string<char, std::__
> 1::char_traits<char>, std::__1::allocator<char>> const&, unsigned int,
> unsigned int, unsigned int, unsigned int, bool)+36)
> F DEBUG : #04 pc 0013c9ab /system/lib/libart.so
> (art::gc::Heap::Heap(unsigned int, unsigned int, unsigned int,
> unsigned int, double, double, unsigned int, unsigned int,
> std::__1::basic_string<char, std::__1::char_traits<char>,
> std::__1::allocator<char>> const&, art::InstructionSet,
> art::gc::CollectorType, art::gc::CollectorType,
> art::gc::space::LargeObjectSpaceType, unsigned int, unsigned int,
> unsigned int, bool, unsigned int, unsigned int, bool, bool, bool,
> bool, bool, bool, bool, bool, bool, bool, bool, unsigned long
> long)+1674)
> DEBUG : #05 pc 00318201 /system/lib/libart.so
> (art::Runtime::Init(art::RuntimeArgumentMap&&)+7036)
> DEBUG : #06 pc 0031af19 /system/lib/libart.so
> (art::Runtime::Create(std::__1::vector<std::__1::pair<std::__1::basic_string<char,
> std::__1::char_traits<char>, std::__1::allocator<char>>, void const*>,
> std::__1::allocator<std::__1::pair<std::__1::basic_string<char,
> std::__1::char_traits<char>, std::__1::allocator<char>>, void
> const*>>> const&, bool)+68)
> F DEBUG : #07 pc 0023c353 /system/lib/libart.so (JNI_CreateJavaVM+658)
> F DEBUG : #08 pc 0000205f /system/lib/libandroid_runtime.so
> (android::AndroidRuntime::startVm(_JavaVM**, _JNIEnv**, bool)+5038)
> F DEBUG : #09 pc 00002381 /system/lib/libandroid_runtime.so
> (android::AndroidRuntime::start(char const*,
> android::Vector<android::String8> const&, bool)+196)
> F DEBUG : #10 pc 0000046b /system/bin/app_process32 (main+702)
>
> Regards,
> Amit Pundir
>
--
Kirill A. Shutemov