)]}' { "commit": "5c6360ee4a0e7f62de34341ad5d3c936f49b391d", "tree": "61e610a4ca3d445fcaa658e798dd34e445011b65", "parents": [ "4405bdf3c57ec28d606bdf5325f1167505bfdcd4" ], "author": { "name": "Ard Biesheuvel", "email": "ardb@kernel.org", "time": "Wed Jun 24 08:51:49 2020 +0100" }, "committer": { "name": "Russell King", "email": "rmk+kernel@armlinux.org.uk", "time": "Tue Jul 21 16:32:56 2020 +0100" }, "message": "ARM: 8988/1: mmu: fix crash in EFI calls due to p4d typo in create_mapping_late()\n\nCommit\n\n 84e6ffb2c49c7901 (\"arm: add support for folded p4d page tables\")\n\nupdated create_mapping_late() to take folded P4Ds into account when\ncreating mappings, but inverted the p4d_alloc() failure test, resulting\nin no mapping to be created at all.\n\nWhen the EFI rtc driver subsequently tries to invoke the EFI GetTime()\nservice, the memory regions covering the EFI data structures are missing\nfrom the page tables, resulting in a crash like\n\n Unable to handle kernel paging request at virtual address 5ae0cf28\n pgd \u003d (ptrval)\n [5ae0cf28] *pgd\u003d80000040205003, *pmd\u003d00000000\n Internal error: Oops: 207 [#1] SMP THUMB2\n Modules linked in:\n CPU: 0 PID: 7 Comm: kworker/u32:0 Not tainted 5.7.0+ #92\n Hardware name: QEMU KVM Virtual Machine, BIOS 0.0.0 02/06/2015\n Workqueue: efi_rts_wq efi_call_rts\n PC is at efi_call_rts+0x94/0x294\n LR is at efi_call_rts+0x83/0x294\n pc : [\u003cc0b4f098\u003e] lr : [\u003cc0b4f087\u003e] psr: 30000033\n sp : e6219ef0 ip : 00000000 fp : ffffe000\n r10: 00000000 r9 : 00000000 r8 : 30000013\n r7 : e6201dd0 r6 : e6201ddc r5 : 00000000 r4 : c181f264\n r3 : 5ae0cf10 r2 : 00000001 r1 : e6201dd0 r0 : e6201ddc\n Flags: nzCV IRQs on FIQs on Mode SVC_32 ISA Thumb Segment none\n Control: 70c5383d Table: 661cc840 DAC: 00000001\n Process kworker/u32:0 (pid: 7, stack limit \u003d 0x(ptrval))\n ...\n [\u003cc0b4f098\u003e] (efi_call_rts) from [\u003cc0448219\u003e] (process_one_work+0x16d/0x3d8)\n [\u003cc0448219\u003e] (process_one_work) from [\u003cc0448581\u003e] (worker_thread+0xfd/0x408)\n [\u003cc0448581\u003e] (worker_thread) from [\u003cc044ca7b\u003e] (kthread+0x103/0x104)\n ...\n\nFixes: 84e6ffb2c49c7901 (\"arm: add support for folded p4d page tables\")\nReviewed-by: Mike Rapoport \u003crppt@linux.ibm.com\u003e\nSigned-off-by: Ard Biesheuvel \u003cardb@kernel.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@armlinux.org.uk\u003e\n", "tree_diff": [ { "type": "modify", "old_id": "628028bfbb923a817ef4218e232506afad98bc82", "old_mode": 33188, "old_path": "arch/arm/mm/mmu.c", "new_id": "bcd82614c25d0c45f7efe69674e6a95fd0aaa4ea", "new_mode": 33188, "new_path": "arch/arm/mm/mmu.c" } ] }