• Austin Clements's avatar
    Map ELF segments with zeroed regions as two vmnodes · 49ba38fa
    Austin Clements 提交于
    Previously, we mapped it as one node that spanned all of the pages,
    but had a smaller size.  This causes a panic when we fault on pages
    beyond the size because vmnode::loadpg calls readi with a too-large
    offset.  We could "fix" loadpg, but what we have now is actually
    POSIX-ish behavior (which says faults beyond the end of the mapped
    object should signal SIGBUS), so instead we fix the ELF loader to
    create two vmnodes in this situation.
    
    This gets usertests running again for me (it now fails at the BSS
    test, but at least it starts).
    49ba38fa
vm.cc 15.4 KB