{"push_id":3183320608,"size":3,"distinct_size":3,"ref":"refs/heads/pie","head":"e31bb492cfa6cd495b7875e908614954d54ed7fd","before":"803042f822ffae3216a75f9feff41c53820ba052","commits":[{"sha":"40dd601d3d7c4edbdf2de5be664ce1cfdb28ff60","author":{"name":"Catalin Marinas","email":"15ce75b290ebaf27c3f9fd73ab848685ed3d8261@arm.com"},"message":"FROMLIST: arm64: Introduce uaccess_{disable,enable} functionality based on TTBR0_EL1\n\nThis patch adds the uaccess macros/functions to disable access to user\nspace by setting TTBR0_EL1 to a reserved zeroed page. Since the value\nwritten to TTBR0_EL1 must be a physical address, for simplicity this\npatch introduces a reserved_ttbr0 page at a constant offset from\nswapper_pg_dir. The uaccess_disable code uses the ttbr1_el1 value\nadjusted by the reserved_ttbr0 offset.\n\nEnabling access to user is done by restoring TTBR0_EL1 with the value\nfrom the struct thread_info ttbr0 variable. Interrupts must be disabled\nduring the uaccess_ttbr0_enable code to ensure the atomicity of the\nthread_info.ttbr0 read and TTBR0_EL1 write. This patch also moves the\nget_thread_info asm macro from entry.S to assembler.h for reuse in the\nuaccess_ttbr0_* macros.\n\nCc: Will Deacon <will.deacon@arm.com>\nCc: James Morse <james.morse@arm.com>\nCc: Kees Cook <keescook@chromium.org>\nCc: Mark Rutland <mark.rutland@arm.com>\nSigned-off-by: Catalin Marinas <catalin.marinas@arm.com>\n\nBug: 31432001\nChange-Id: Idf09a870b8612dce23215bce90d88781f0c0c3aa\n(cherry picked from commit 940d37234182d2675ab8ab46084840212d735018)\nSigned-off-by: Sami Tolvanen <samitolvanen@google.com>","distinct":true,"url":"https://api.github.com/repos/Huawei-Dev/android_kernel_huawei_bach/commits/40dd601d3d7c4edbdf2de5be664ce1cfdb28ff60"},{"sha":"d9779f15538cf87b2a607870d49a2ad723ed514d","author":{"name":"Mark Rutland","email":"1db9dd262beaa64f35756dd39531d9747b7778bb@arm.com"},"message":"UPSTREAM: arm64: head.S: use memset to clear BSS\n\nCurrently we use an open-coded memzero to clear the BSS. As it is a\ntrivial implementation, it is sub-optimal.\n\nOur optimised memset doesn't use the stack, is position-independent, and\nfor the memzero case can use of DC ZVA to clear large blocks\nefficiently. In __mmap_switched the MMU is on and there are no live\ncaller-saved registers, so we can safely call an uninstrumented memset.\n\nThis patch changes __mmap_switched to use memset when clearing the BSS.\nWe use the __pi_memset alias so as to avoid any instrumentation in all\nkernel configurations.\n\nCc: Catalin Marinas <catalin.marinas@arm.com>\nCc: Marc Zyngier <marc.zyngier@arm.com>\nReviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>\nSigned-off-by: Mark Rutland <mark.rutland@arm.com>\nSigned-off-by: Will Deacon <will.deacon@arm.com>\n\nBug: 31432001\nChange-Id: I5e8cc64db02f320ccbacd4537f71c52455223146\n(cherry picked from commit 2a803c4db615d85126c5c7afd5849a3cfde71422)\nSigned-off-by: Sami Tolvanen <samitolvanen@google.com>","distinct":true,"url":"https://api.github.com/repos/Huawei-Dev/android_kernel_huawei_bach/commits/d9779f15538cf87b2a607870d49a2ad723ed514d"},{"sha":"e31bb492cfa6cd495b7875e908614954d54ed7fd","author":{"name":"Mark Rutland","email":"1db9dd262beaa64f35756dd39531d9747b7778bb@arm.com"},"message":"BACKPORT: arm64: mm: place empty_zero_page in bss\n\nCurrently the zero page is set up in paging_init, and thus we cannot use\nthe zero page earlier. We use the zero page as a reserved TTBR value\nfrom which no TLB entries may be allocated (e.g. when uninstalling the\nidmap). To enable such usage earlier (as may be required for invasive\nchanges to the kernel page tables), and to minimise the time that the\nidmap is active, we need to be able to use the zero page before\npaging_init.\n\nThis patch follows the example set by x86, by allocating the zero page\nat compile time, in .bss. This means that the zero page itself is\navailable immediately upon entry to start_kernel (as we zero .bss before\nthis), and also means that the zero page takes up no space in the raw\nImage binary. The associated struct page is allocated in bootmem_init,\nand remains unavailable until this time.\n\nOutside of arch code, the only users of empty_zero_page assume that the\nempty_zero_page symbol refers to the zeroed memory itself, and that\nZERO_PAGE(x) must be used to acquire the associated struct page,\nfollowing the example of x86. This patch also brings arm64 inline with\nthese assumptions.\n\nSigned-off-by: Mark Rutland <mark.rutland@arm.com>\nReviewed-by: Catalin Marinas <catalin.marinas@arm.com>\nTested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>\nReviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>\nTested-by: Jeremy Linton <jeremy.linton@arm.com>\nCc: Laura Abbott <labbott@fedoraproject.org>\nCc: Will Deacon <will.deacon@arm.com>\nSigned-off-by: Catalin Marinas <catalin.marinas@arm.com>\n\nBug: 31432001\nChange-Id: I008375230df42856a7b0d319d6f1aa72d8a8e172\n(cherry picked from commit 5227cfa71f9e8574373f4d0e9e754942d76cdf67)\nSigned-off-by: Sami Tolvanen <samitolvanen@google.com>","distinct":true,"url":"https://api.github.com/repos/Huawei-Dev/android_kernel_huawei_bach/commits/e31bb492cfa6cd495b7875e908614954d54ed7fd"}]}
{"actor":{"display_login":"Huawei-Dev"}}