diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-20 09:18:51 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-20 09:18:51 -0400 |
commit | dcb30e659287a6b40dafed1362532da42ec27229 (patch) | |
tree | b5f74a4b605c59bcef144cbe248879b00e99690c /Documentation | |
parent | 7b9e3a6ac00be4f3d654a711573b1794b046c22f (diff) | |
parent | 25804e6a96681d5d2142058948e218999e4f547c (diff) |
Merge tag 'arm64-stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64
Pull ARM64 fixes from Catalin Marinas:
- Compat register fault reporting fix
- Documentation clarification on tagged pointers
- hwcap widened to 64-bit (user space already reading it as 64-bit)
* tag 'arm64-stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64:
arm64: Widen hwcap to be 64 bit
arm64: Correctly report LR and SP for compat tasks
arm64: documentation: tighten up tagged pointer documentation
arm64: Make do_bad_area() function static
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/arm64/tagged-pointers.txt | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/Documentation/arm64/tagged-pointers.txt b/Documentation/arm64/tagged-pointers.txt index 264e9841563a..d9995f1f51b3 100644 --- a/Documentation/arm64/tagged-pointers.txt +++ b/Documentation/arm64/tagged-pointers.txt | |||
@@ -18,17 +18,17 @@ this byte for application use, with the following caveats: | |||
18 | parameters containing user virtual addresses *must* have | 18 | parameters containing user virtual addresses *must* have |
19 | their top byte cleared before trapping to the kernel. | 19 | their top byte cleared before trapping to the kernel. |
20 | 20 | ||
21 | (2) Tags are not guaranteed to be preserved when delivering | 21 | (2) Non-zero tags are not preserved when delivering signals. |
22 | signals. This means that signal handlers in applications | 22 | This means that signal handlers in applications making use |
23 | making use of tags cannot rely on the tag information for | 23 | of tags cannot rely on the tag information for user virtual |
24 | user virtual addresses being maintained for fields inside | 24 | addresses being maintained for fields inside siginfo_t. |
25 | siginfo_t. One exception to this rule is for signals raised | 25 | One exception to this rule is for signals raised in response |
26 | in response to debug exceptions, where the tag information | 26 | to watchpoint debug exceptions, where the tag information |
27 | will be preserved. | 27 | will be preserved. |
28 | 28 | ||
29 | (3) Special care should be taken when using tagged pointers, | 29 | (3) Special care should be taken when using tagged pointers, |
30 | since it is likely that C compilers will not hazard two | 30 | since it is likely that C compilers will not hazard two |
31 | addresses differing only in the upper bits. | 31 | virtual addresses differing only in the upper byte. |
32 | 32 | ||
33 | The architecture prevents the use of a tagged PC, so the upper byte will | 33 | The architecture prevents the use of a tagged PC, so the upper byte will |
34 | be set to a sign-extension of bit 55 on exception return. | 34 | be set to a sign-extension of bit 55 on exception return. |