All of lore.kernel.org
 help / color / mirror / Atom feed
From: bvantiel@gmail.com (Bas van Tiel)
To: linux-arm-kernel@lists.infradead.org
Subject: Unhandled level 2 translation fault (11) at 0x000000b8, esr 0x92000046, rpi3 (aarch64)
Date: Thu, 29 Dec 2016 17:38:14 +0100	[thread overview]
Message-ID: <CAGDbNAD7-TM6+x0A3FebTOPYmqQqbm1w29ZwH+9qePaAvhxTKw@mail.gmail.com> (raw)

Hi,

when using a signal handler as a way to context switch between
different usercontexts a reproducible exception occurs on my rpi3 in
64-bit mode. (https://gist.github.com/DanGe42/7148946)

Running the context_demo program as a 32-bit ARM executable on a
64-bit kernel is OK, running as a 32 || 64 bit executable on an x86
kernel is OK.

In the first exception the PC doesn?t look correct, and the *pmd is 0.
The 2nd exception happens after running the program again, the PC is 0x0.

A successful function trace was not possible -> complete kernel hangup
when enabling.

Is there another way to gather more information about what is happening?

Linux (none) 4.10.0-rc1-v8+ #3 SMP PREEMPT Thu Dec 29 12:10:12 CET
2016 aarch64 GNU/Linux

[   46.350738] a.out[196]: unhandled level 2 translation fault (11) at
0x000000b8, esr 0x92000046
[   46.360516] pgd = ffffffc0392cb000
[   46.365377] [000000b8] *pgd=00000000392ec003
[   46.365381] , *pud=00000000392ec003
[   46.370878] , *pmd=0000000000000000
[   46.375907]
[   46.383974]
[   46.389107] CPU: 0 PID: 196 Comm: a.out Not tainted 4.10.0-rc1-v8+ #3
[   46.397949] Hardware name: Raspberry Pi 3 Model B (DT)
[   46.406218] task: ffffffc039ad6580 task.stack: ffffffc039bfc000
[   46.413892] PC is at 0x7fb4e34810
[   46.418230] LR is at 0x400b84
[   46.422956] pc : [<0000007fb4e34810>] lr : [<0000000000400b84>]
pstate: 60000000
[   46.431522] sp : 0000000000413350
[   46.436480] x29: 0000000000413350 x28: 0000000000000016
[   46.443142] x27: 0000000000000000 x26: 0000000000000020
[   46.451908] x25: 0000007fb4f35488 x24: 0000000000415f00
[   46.459641] x23: 0000000000000016 x22: 0000000000400b84
[   46.469198] x21: 0000000000413670 x20: 0000000000417030
[   46.476970] x19: 0000000000001000 x18: 0000000000000000
[   46.484744] x17: 0000007fb4e34810 x16: 0000000000411270
[   46.492175] x15: 00000000000005f1 x14: 0000000000000000
[   46.498884] x13: 0000000000000000 x12: 0000000000000000
[   46.506013] x11: 0000000000000020 x10: 0101010101010101
[   46.517164] x9 : 0000000000413670 x8 : 00000000ffffffe0
[   46.525541] x7 : 0000000000413350 x6 : 0000000000413350
[   46.533495] x5 : 00000000ffffffe0 x4 : 0000000000413730
[   46.544052] x3 : 0000000000000008 x2 : 0000000000000000
[   46.552211] x1 : 0000000000413670 x0 : 0000000000000000
[   46.558668]

2nd time startup of the executable

[  262.565147] a.out[201]: unhandled level 2 translation fault (11) at
0x00000000, esr 0x82000006
[  262.575243] pgd = ffffffc03939a000
[  262.579948] [00000000] *pgd=000000003938f003
[  262.579951] , *pud=000000003938f003
[  262.586040] , *pmd=0000000000000000
[  262.590479]
[  262.598234]
[  262.601108] CPU: 0 PID: 201 Comm: a.out Not tainted 4.10.0-rc1-v8+ #3
[  262.609086] Hardware name: Raspberry Pi 3 Model B (DT)
[  262.615731] task: ffffffc03904a600 task.stack: ffffffc039bfc000
[  262.621768] PC is at 0x0
[  262.624300] LR is at 0x0
[  262.626835] pc : [<0000000000000000>] lr : [<0000000000000000>]
pstate: 60000000
[  262.634437] sp : 00000000004159c0
[  262.637753] x29: 0000000000000000 x28: 0000000000000000
[  262.643242] x27: 0000000000000000 x26: 0000000000000000
[  262.648554] x25: 0000000000000000 x24: 0000000000000000
[  262.654033] x23: 0000000000000000 x22: 0000000000000000
[  262.659349] x21: 00000000004008f0 x20: 0000000000000000
[  262.664825] x19: 0000000000000000 x18: 0000000000000000
[  262.670145] x17: 0000007fb065b620 x16: 0000000000400b84
[  262.675622] x15: 00000000000003d1 x14: 0000000000000000
[  262.680938] x13: 0000000000000000 x12: 0000000000000000
[  262.686413] x11: 0000000000000020 x10: 0101010101010101
[  262.691835] x9 : 00000000004112c0 x8 : 0000000000000087
[  262.697159] x7 : 0000000000000000 x6 : 0000000000000000
[  262.702634] x5 : 0000000000000000 x4 : 0000000000000000
[  262.707949] x3 : 0000000000000000 x2 : 0000000000000000
[  262.713424] x1 : 0000000000000000 x0 : 0000000000000000
[  262.718739]

rpi3:
minimal kernel (64-bit, cortex-a53, little endian, 4Kb page,
initramfs), different kernels tried 4.8/4.9/4.10.0-rc1-v8+ the same
result occurs, also with different compilers.

kernel, aarch64-linux-gnu-gcc (Linaro GCC 6.2-2016.11) 6.2.1 20161016
application, aarch64-linux-gnu-gcc (Linaro GCC 6.2-2016.11) 6.2.1 20161016

The only item I found by reading through the different source-files was the
structure definition of struct kernel_rt_sigframe
(http://osxr.org:8080/glibc/source/ports/sysdeps/unix/sysv/linux/aarch64/kernel_rt_sigframe.h?v=glibc-2.18)
compared to the struct rt_sigframe (linux/arch/arm64/signal.c).

Any help or pointers to solve this issue are welcome,

regards
Bas

             reply	other threads:[~2016-12-29 16:38 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-29 16:38 Bas van Tiel [this message]
2016-12-29 17:02 ` Unhandled level 2 translation fault (11) at 0x000000b8, esr 0x92000046, rpi3 (aarch64) Neil Armstrong
2016-12-30  7:13 ` Jisheng Zhang
2016-12-30 12:21   ` Bas van Tiel
2017-01-09 15:13     ` Catalin Marinas
2017-01-09 18:06       ` Bas van Tiel
2017-01-10 12:14         ` Catalin Marinas
2017-01-11 14:49           ` Catalin Marinas
2017-01-11 15:33             ` Dave Martin
2017-01-13 18:47               ` Bas van Tiel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAGDbNAD7-TM6+x0A3FebTOPYmqQqbm1w29ZwH+9qePaAvhxTKw@mail.gmail.com \
    --to=bvantiel@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.