efibootmgr will cause a Oops, and make grub-install failed

Bug #1281123 reported by Fu Wei
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linaro UEFI
Fix Released
Critical
Steven Kinney

Bug Description

when execute grub-install, I got a Oops:
------------------
root@genericarmv8:/# grub-install
Installing for arm64-efi platform.
[ 2740.274315] Unable to handle kernel paging request at virtual address 0ffc0058
[ 2740.274369] pgd = ffffffc07ba2c000
[ 2740.274416] [0ffc0058] *pgd=00000000fbf5e003, *pmd=0000000000000000
[ 2740.274489] Internal error: Oops: 96000006 [#1] SMP
[ 2740.274531] Modules linked in:
[ 2740.274596] CPU: 0 PID: 1861 Comm: efibootmgr Not tainted 3.14.0-rc2+ #1
[ 2740.274664] task: ffffffc07b546500 ti: ffffffc07ba3c000 task.ti: ffffffc07ba3c000
[ 2740.274724] PC is at 0xffffffc0771caaac
[ 2740.274775] LR is at 0xffffffc0771caa88
[ 2740.274833] pc : [<ffffffc0771caaac>] lr : [<ffffffc0771caa88>] pstate: 400001c5
[ 2740.274887] sp : ffffffc07ba3fc10
[ 2740.274932] x29: ffffffc07ba3fd50 x28: 0000000000000007
[ 2740.275004] x27: ffffffc07ba3fda0 x26: ffffffc07ba2b000
[ 2740.275074] x25: 00000000000000a2 x24: 00000000ff8ce6c0
[ 2740.275146] x23: ffffffc0771d7bd8 x22: ffffffc07f8a8018
[ 2740.275219] x21: ffffffc07ba3fd20 x20: ffffffc07ba3fd20
[ 2740.275290] x19: 0000000000000012 x18: 0000007fe3b62be0
[ 2740.275361] x17: 0000007fb2567fc0 x16: ffffffc000170f08
[ 2740.275435] x15: 0036f1a974000000 x14: 0000000000000000
[ 2740.275504] x13: 00000003e8000000 x12: 0000000000000038
[ 2740.275575] x11: ffffffc07d24a418 x10: ffffffc0004ecb4c
[ 2740.275647] x9 : ffffffc00069f990 x8 : ffffffc07ba2b010
[ 2740.275719] x7 : fffffffffffffffe x6 : ffffffc07f8a8028
[ 2740.275791] x5 : ffffffc07f8a8038 x4 : ffffffc07ba3fda0
[ 2740.275862] x3 : 0000000000000032 x2 : 0000000000000000
[ 2740.275931] x1 : ffffffc07f8d1d18 x0 : 000000000ffc0048
[ 2740.275993]
[ 2740.276043] Process efibootmgr (pid: 1861, stack limit = 0xffffffc07ba3c058)
[ 2740.276106] Stack: (0xffffffc07ba3fc10 to 0xffffffc07ba40000)
[ 2740.276190] fc00: 7ba2b000 ffffffc0 00000007 00000000
[ 2740.276299] fc20: 7ba3fda0 ffffffc0 00000070 00000000 00000007 00000000 771d7bd8 ffffffc0
[ 2740.276411] fc40: 7d24a418 ffffffc0 0095b8d8 ffffffc0 00880000 ffffffc0 7ba3c000 ffffffc0
[ 2740.276522] fc60: 771cb398 ffffffc0 00000007 00000000 7ba3fda0 ffffffc0 00000070 00000000
[ 2740.276630] fc80: 00000007 00000000 771cb37c ffffffc0 00000007 00000000 771cb2e8 ffffffc0
[ 2740.276742] fca0: 7d24a418 ffffffc0 7f8a8038 ffffffc0 00000000 ffffffc0 00000032 00000000
[ 2740.276854] fcc0: 7ba2b000 ffffffc0 0095b000 ffffffc0 008c0728 ffffffc0 0095b920 ffffffc0
[ 2740.276964] fce0: 00000007 00000000 00000070 00000000 7d24a418 ffffffc0 0095b8d8 ffffffc0
[ 2740.277075] fd00: 00880000 ffffffc0 7ba3c000 ffffffc0 004ec764 ffffffc0 00000070 00000000
[ 2740.277184] fd20: 00000000 00000000 00000000 00000000 7f897018 ffffffc0 7f88707c ffffffc0
[ 2740.277297] fd40: 7ba3fd00 ffffffc0 00384fbc ffffffc0 7ba3fdb0 ffffffc0 004ed570 ffffffc0
[ 2740.277409] fd60: 7d24a000 ffffffc0 7ba2b000 ffffffc0 7d24a418 ffffffc0 00000824 00000000
[ 2740.277519] fd80: 7ba3fec8 ffffffc0 7bc61990 ffffffc0 00000112 00000000 00000040 00000000
[ 2740.277632] fda0: 8be4df61 11d293ca e0000daa 8c2b0398 7ba3fde0 ffffffc0 001dc6a4 ffffffc0
[ 2740.277743] fdc0: 00000824 00000000 7d24a000 ffffffc0 fffffff2 ffffffff 7bc61980 ffffffc0
[ 2740.277857] fde0: 7ba3fdf0 ffffffc0 001e0164 ffffffc0 7ba3fe30 ffffffc0 001706e0 ffffffc0
[ 2740.277967] fe00: 7d26b0c0 ffffffc0 00000824 00000000 7ba3fec8 ffffffc0 3afd30ba 00000000
[ 2740.278078] fe20: 60000000 00000000 00000015 00000000 7ba3fe80 ffffffc0 00170f4c ffffffc0
[ 2740.278187] fe40: 7d26b0c0 ffffffc0 3afd30ba 00000000 00000000 00000000 b2567fdc 0000007f
[ 2740.278298] fe60: 60000000 00000000 3afd30ba 00000000 7ba3fe80 ffffffc0 00170f28 ffffffc0
[ 2740.278407] fe80: e3b61440 0000007f 000841ec ffffffc0 00000006 00000000 3afd30ba 00000000
[ 2740.278516] fea0: ffffffff ffffffff 00020001 00000000 00000022 00000100 00000824 00000000
[ 2740.278624] fec0: e3b61330 0000007f 00000000 00000000 00000006 00000000 3afd30ba 00000000
[ 2740.278731] fee0: 00000824 00000000 00000000 00000000 00000000 00000000 00000400 00000000
[ 2740.278836] ff00: 000003ff 00000000 00000000 00000000 00000040 00000000 00000004 00000000
[ 2740.278944] ff20: 00408878 00000000 00000007 00000000 00000038 00000000 e8000000 00000003
[ 2740.279052] ff40: 00000000 00000000 74000000 0036f1a9 00000000 00000000 b2567fc0 0000007f
[ 2740.279160] ff60: e3b62be0 0000007f 00000006 00000000 3afd30ba 00000000 00000000 00000000
[ 2740.279267] ff80: 00000002 00000000 00000002 00000000 3afd30ba 00000000 3afd30e0 00000000
[ 2740.279376] ffa0: 00419000 00000000 00419000 00000000 00000000 00000000 e3b61440 0000007f
[ 2740.279485] ffc0: 0040675c 00000000 e3b61440 0000007f b2567fdc 0000007f 60000000 00000000
[ 2740.279592] ffe0: 00000006 00000000 00000040 00000000 00000000 00000000 00000000 00000000
[ 2740.279642] Call trace:
[ 2740.279696] [<ffffffc0771caaac>] 0xffffffc0771caaac
[ 2740.279768] [<ffffffc0004ed570>] efivar_create+0x94/0x128
[ 2740.279851] [<ffffffc0001dc6a4>] sysfs_kf_bin_write+0x68/0x78
[ 2740.279927] [<ffffffc0001e0164>] kernfs_fop_write+0xf0/0x148
[ 2740.279995] [<ffffffc0001706e0>] vfs_write+0xa8/0x1a0
[ 2740.280062] [<ffffffc000170f4c>] SyS_write+0x44/0x90
[ 2740.280144] Code: 36000efc f9400820 121d0382 b900a3e2 (b9401004)
[ 2740.280202] ---[ end trace d31c8653ca25aa8e ]---
Installation finished. No error reported.
root@genericarmv8:/# grub-install
Installing for arm64-efi platform.
------------------

and Leif can reproduce the behaviour by simply using the command line
'efibootmgr -c -d /dev/vda'.

And Leif mention that:
0x0ffc0058 lies within the NOR flash of the FVP Base model.
Yet, I see no memory region marked as i/o in the memory map.

This bug block the UEFI and GRUB test design in LAVA.

Revision history for this message
Fu Wei (fu-wei) wrote :
Anmar Oueja (anmar)
Changed in linaro-uefi:
importance: Undecided → Critical
Revision history for this message
Leif Lindholm (leif-lindholm) wrote :

This applies to all platforms in ArmPlatformPkg.

Revision history for this message
Anmar Oueja (anmar) wrote :

Out inability to support persistent UEFI variables will block our ability to complete automated network boot testing.

Revision history for this message
Anmar Oueja (anmar) wrote :

I talked to Olivier during LCA14 and he will attempt to reproduce with the help of Fu Wei

Revision history for this message
Ilias Biris (ibiris) wrote :

Olivier Martin has reported having pushed the blocking patches upstream:

- [SVN 15435] ArmPlatformPkg/PL031RealTimeClock: Fixed driver to support UEFI Runtime Services
- [SVN 15436] ArmPlatformPkg/NorFlashDxe: Declare the driver as a UEFI Runtime driver
- [SVN 15437] ArmPlatformPkg/NorFlashDxe: Fix coding mistakes that would prevent Runtime mode
- [SVN 15438] ArmPlatformPkg/NorFlashDxe: Fixed driver to support UEFI Runtime mode
- [SVN 15439] ArmPlatformPkg/Bds: Check OptionalData is not NULL before accessing it

The pushed patches should fix:
- this bug (ie https://bugs.launchpad.net/linaro-uefi/+bug/1281123 efibootmgr will cause a Oops, and make grub-install failed) as well as
- https://bugs.launchpad.net/linaro-uefi/+bug/1302671 GetTime runtime service call causes kernel Oops (note: I have not tested this one)

Steven will be including these patches into the linaro-uefi 2014.04-rcx so that we can proceed with testing and confirm the bug is fixed.
the fixing

Changed in linaro-uefi:
assignee: nobody → Steven Kinney (steven-kinney)
status: New → In Progress
Revision history for this message
Fu Wei (fu-wei) wrote :
Revision history for this message
Fu Wei (fu-wei) wrote :

the new version of grub-install and linaro-edk2 lava test:
https://staging.validation.linaro.org/scheduler/job/46623/log_file

Revision history for this message
Leif Lindholm (leif-lindholm) wrote :

Resolved, closing.

Changed in linaro-uefi:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.