mbox series

[v2,00/12] target/arm: Implement ARMv8.5-BTI

Message ID 20190128223118.5255-1-richard.henderson@linaro.org
Headers show
Series target/arm: Implement ARMv8.5-BTI | expand

Message

Richard Henderson Jan. 28, 2019, 10:31 p.m. UTC
The branch target identification extension does not yet have
kernel or gcc support.  It should be in shape for developing
those though.

In system mode I do honor the GP bit from the page tables.
In user-only mode, there is a way to pretend that the GP bit
is always set.  Further linux-user changes will have to track
the ABI that gets developed.

In the meantime, provide a statically linable make check-tcg 
test for the functionality.

Changes since v2:
  * Rebase on master.
  * Incorporate feedback from Peter.


r~


Richard Henderson (12):
  target/arm: Introduce isar_feature_aa64_bti
  target/arm: Add PSTATE.BTYPE
  target/arm: Add BT and BTYPE to tb->flags
  exec: Add target-specific tlb bits to MemTxAttrs
  target/arm: Cache the GP bit for a page in MemTxAttrs
  target/arm: Default handling of BTYPE during translation
  target/arm: Reset btype for direct branches
  target/arm: Set btype for indirect branches
  target/arm: Add x-guarded-pages cpu property for user-only
  target/arm: Enable BTI for -cpu max
  linux-user/aarch64: Reset btype for syscalls and signals
  tests/tcg/aarch64: Add bti smoke test

 include/exec/memattrs.h           |  10 ++
 target/arm/cpu.h                  |  24 +++-
 target/arm/internals.h            |   6 +
 target/arm/translate.h            |   9 ++
 linux-user/aarch64/cpu_loop.c     |  15 +++
 target/arm/cpu64.c                |  22 ++++
 target/arm/helper.c               |  28 +++--
 target/arm/translate-a64.c        | 193 +++++++++++++++++++++++++++++-
 tests/tcg/aarch64/bti-1.c         |  61 ++++++++++
 tests/tcg/aarch64/bti-crt.inc.c   |  51 ++++++++
 tests/tcg/aarch64/Makefile.target |   7 +-
 11 files changed, 415 insertions(+), 11 deletions(-)
 create mode 100644 tests/tcg/aarch64/bti-1.c
 create mode 100644 tests/tcg/aarch64/bti-crt.inc.c

-- 
2.17.2

Comments

no-reply@patchew.org Jan. 31, 2019, 6:12 p.m. UTC | #1
Patchew URL: https://patchew.org/QEMU/20190128223118.5255-1-richard.henderson@linaro.org/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Subject: [Qemu-devel] [PATCH v2 00/12] target/arm: Implement ARMv8.5-BTI
Type: series
Message-id: 20190128223118.5255-1-richard.henderson@linaro.org

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
Switched to a new branch 'test'
18c0b24bcd tests/tcg/aarch64: Add bti smoke test
d5315467cf linux-user/aarch64: Reset btype for syscalls and signals
ba139e0144 target/arm: Enable BTI for -cpu max
1a387cb4b4 target/arm: Add x-guarded-pages cpu property for user-only
b3fbe9ad27 target/arm: Set btype for indirect branches
905ade3305 target/arm: Reset btype for direct branches
57cafb41c4 target/arm: Default handling of BTYPE during translation
1c6561c9a8 target/arm: Cache the GP bit for a page in MemTxAttrs
9ee071294c exec: Add target-specific tlb bits to MemTxAttrs
79116bebaa target/arm: Add BT and BTYPE to tb->flags
6fd0b311a5 target/arm: Add PSTATE.BTYPE
59b3d084bc target/arm: Introduce isar_feature_aa64_bti

=== OUTPUT BEGIN ===
1/12 Checking commit 59b3d084bc01 (target/arm: Introduce isar_feature_aa64_bti)
2/12 Checking commit 6fd0b311a5a6 (target/arm: Add PSTATE.BTYPE)
3/12 Checking commit 79116bebaace (target/arm: Add BT and BTYPE to tb->flags)
4/12 Checking commit 9ee071294c1b (exec: Add target-specific tlb bits to MemTxAttrs)
ERROR: spaces prohibited around that ':' (ctx:WxW)
#28: FILE: include/exec/memattrs.h:47:
+    unsigned int target_tlb_bit0 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#29: FILE: include/exec/memattrs.h:48:
+    unsigned int target_tlb_bit1 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#30: FILE: include/exec/memattrs.h:49:
+    unsigned int target_tlb_bit2 : 1;
                                  ^

total: 3 errors, 0 warnings, 16 lines checked

Patch 4/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

5/12 Checking commit 1c6561c9a819 (target/arm: Cache the GP bit for a page in MemTxAttrs)
6/12 Checking commit 57cafb41c482 (target/arm: Default handling of BTYPE during translation)
WARNING: Block comments use a leading /* on a separate line
#70: FILE: target/arm/translate-a64.c:13730:
+/**

ERROR: return is not a function, parentheses are not required
#97: FILE: target/arm/translate-a64.c:13757:
+    return (tlb_hit(entry->addr_code, addr) &&

WARNING: Block comments use a leading /* on a separate line
#102: FILE: target/arm/translate-a64.c:13762:
+/**

total: 1 errors, 2 warnings, 196 lines checked

Patch 6/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

7/12 Checking commit 905ade330525 (target/arm: Reset btype for direct branches)
8/12 Checking commit b3fbe9ad27be (target/arm: Set btype for indirect branches)
9/12 Checking commit 1a387cb4b4bf (target/arm: Add x-guarded-pages cpu property for user-only)
10/12 Checking commit ba139e01449c (target/arm: Enable BTI for -cpu max)
11/12 Checking commit d5315467cf35 (linux-user/aarch64: Reset btype for syscalls and signals)
12/12 Checking commit 18c0b24bcd26 (tests/tcg/aarch64: Add bti smoke test)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#32: 
new file mode 100644

ERROR: externs should be avoided in .c files
#116: FILE: tests/tcg/aarch64/bti-crt.inc.c:13:
+int main(void);

total: 1 errors, 1 warnings, 128 lines checked

Patch 12/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20190128223118.5255-1-richard.henderson@linaro.org/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
no-reply@patchew.org Jan. 31, 2019, 6:21 p.m. UTC | #2
Patchew URL: https://patchew.org/QEMU/20190128223118.5255-1-richard.henderson@linaro.org/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Subject: [Qemu-devel] [PATCH v2 00/12] target/arm: Implement ARMv8.5-BTI
Type: series
Message-id: 20190128223118.5255-1-richard.henderson@linaro.org

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 t [tag update]            patchew/20190128223118.5255-1-richard.henderson@linaro.org -> patchew/20190128223118.5255-1-richard.henderson@linaro.org
Switched to a new branch 'test'
c6a612538e tests/tcg/aarch64: Add bti smoke test
d2aa2b0d2c linux-user/aarch64: Reset btype for syscalls and signals
b986e6c3f5 target/arm: Enable BTI for -cpu max
e1caea7ca5 target/arm: Add x-guarded-pages cpu property for user-only
4f7a8dd8bb target/arm: Set btype for indirect branches
3c57957c9f target/arm: Reset btype for direct branches
7ea1157e0b target/arm: Default handling of BTYPE during translation
6ac89e22c2 target/arm: Cache the GP bit for a page in MemTxAttrs
09f79d5766 exec: Add target-specific tlb bits to MemTxAttrs
9ad3acceed target/arm: Add BT and BTYPE to tb->flags
920eae0614 target/arm: Add PSTATE.BTYPE
feb08a6fee target/arm: Introduce isar_feature_aa64_bti

=== OUTPUT BEGIN ===
1/12 Checking commit feb08a6fee4a (target/arm: Introduce isar_feature_aa64_bti)
2/12 Checking commit 920eae0614cb (target/arm: Add PSTATE.BTYPE)
3/12 Checking commit 9ad3acceedf5 (target/arm: Add BT and BTYPE to tb->flags)
4/12 Checking commit 09f79d576620 (exec: Add target-specific tlb bits to MemTxAttrs)
ERROR: spaces prohibited around that ':' (ctx:WxW)
#28: FILE: include/exec/memattrs.h:47:
+    unsigned int target_tlb_bit0 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#29: FILE: include/exec/memattrs.h:48:
+    unsigned int target_tlb_bit1 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#30: FILE: include/exec/memattrs.h:49:
+    unsigned int target_tlb_bit2 : 1;
                                  ^

total: 3 errors, 0 warnings, 16 lines checked

Patch 4/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

5/12 Checking commit 6ac89e22c243 (target/arm: Cache the GP bit for a page in MemTxAttrs)
6/12 Checking commit 7ea1157e0b93 (target/arm: Default handling of BTYPE during translation)
ERROR: return is not a function, parentheses are not required
#97: FILE: target/arm/translate-a64.c:13757:
+    return (tlb_hit(entry->addr_code, addr) &&

total: 1 errors, 0 warnings, 196 lines checked

Patch 6/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

7/12 Checking commit 3c57957c9f30 (target/arm: Reset btype for direct branches)
8/12 Checking commit 4f7a8dd8bbd3 (target/arm: Set btype for indirect branches)
9/12 Checking commit e1caea7ca5ad (target/arm: Add x-guarded-pages cpu property for user-only)
10/12 Checking commit b986e6c3f551 (target/arm: Enable BTI for -cpu max)
11/12 Checking commit d2aa2b0d2cec (linux-user/aarch64: Reset btype for syscalls and signals)
12/12 Checking commit c6a612538e4c (tests/tcg/aarch64: Add bti smoke test)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#32: 
new file mode 100644

ERROR: externs should be avoided in .c files
#116: FILE: tests/tcg/aarch64/bti-crt.inc.c:13:
+int main(void);

total: 1 errors, 1 warnings, 128 lines checked

Patch 12/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20190128223118.5255-1-richard.henderson@linaro.org/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
no-reply@patchew.org Jan. 31, 2019, 6:21 p.m. UTC | #3
Patchew URL: https://patchew.org/QEMU/20190128223118.5255-1-richard.henderson@linaro.org/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Type: series
Message-id: 20190128223118.5255-1-richard.henderson@linaro.org
Subject: [Qemu-devel] [PATCH v2 00/12] target/arm: Implement ARMv8.5-BTI

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 - [tag update]      patchew/20190128223118.5255-1-richard.henderson@linaro.org -> patchew/20190128223118.5255-1-richard.henderson@linaro.org
Switched to a new branch 'test'
c6a6125 tests/tcg/aarch64: Add bti smoke test
d2aa2b0 linux-user/aarch64: Reset btype for syscalls and signals
b986e6c target/arm: Enable BTI for -cpu max
e1caea7 target/arm: Add x-guarded-pages cpu property for user-only
4f7a8dd target/arm: Set btype for indirect branches
3c57957 target/arm: Reset btype for direct branches
7ea1157 target/arm: Default handling of BTYPE during translation
6ac89e2 target/arm: Cache the GP bit for a page in MemTxAttrs
09f79d5 exec: Add target-specific tlb bits to MemTxAttrs
9ad3acc target/arm: Add BT and BTYPE to tb->flags
920eae0 target/arm: Add PSTATE.BTYPE
feb08a6 target/arm: Introduce isar_feature_aa64_bti

=== OUTPUT BEGIN ===
1/12 Checking commit feb08a6fee4a (target/arm: Introduce isar_feature_aa64_bti)
2/12 Checking commit 920eae0614cb (target/arm: Add PSTATE.BTYPE)
3/12 Checking commit 9ad3acceedf5 (target/arm: Add BT and BTYPE to tb->flags)
4/12 Checking commit 09f79d576620 (exec: Add target-specific tlb bits to MemTxAttrs)
ERROR: spaces prohibited around that ':' (ctx:WxW)
#28: FILE: include/exec/memattrs.h:47:
+    unsigned int target_tlb_bit0 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#29: FILE: include/exec/memattrs.h:48:
+    unsigned int target_tlb_bit1 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#30: FILE: include/exec/memattrs.h:49:
+    unsigned int target_tlb_bit2 : 1;
                                  ^

total: 3 errors, 0 warnings, 16 lines checked

Patch 4/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

5/12 Checking commit 6ac89e22c243 (target/arm: Cache the GP bit for a page in MemTxAttrs)
6/12 Checking commit 7ea1157e0b93 (target/arm: Default handling of BTYPE during translation)
ERROR: return is not a function, parentheses are not required
#97: FILE: target/arm/translate-a64.c:13757:
+    return (tlb_hit(entry->addr_code, addr) &&

total: 1 errors, 0 warnings, 196 lines checked

Patch 6/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

7/12 Checking commit 3c57957c9f30 (target/arm: Reset btype for direct branches)
8/12 Checking commit 4f7a8dd8bbd3 (target/arm: Set btype for indirect branches)
9/12 Checking commit e1caea7ca5ad (target/arm: Add x-guarded-pages cpu property for user-only)
10/12 Checking commit b986e6c3f551 (target/arm: Enable BTI for -cpu max)
11/12 Checking commit d2aa2b0d2cec (linux-user/aarch64: Reset btype for syscalls and signals)
12/12 Checking commit c6a612538e4c (tests/tcg/aarch64: Add bti smoke test)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#32: 
new file mode 100644

ERROR: externs should be avoided in .c files
#116: FILE: tests/tcg/aarch64/bti-crt.inc.c:13:
+int main(void);

total: 1 errors, 1 warnings, 128 lines checked

Patch 12/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20190128223118.5255-1-richard.henderson@linaro.org/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
no-reply@patchew.org Jan. 31, 2019, 6:30 p.m. UTC | #4
Patchew URL: https://patchew.org/QEMU/20190128223118.5255-1-richard.henderson@linaro.org/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Subject: [Qemu-devel] [PATCH v2 00/12] target/arm: Implement ARMv8.5-BTI
Type: series
Message-id: 20190128223118.5255-1-richard.henderson@linaro.org

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 t [tag update]            patchew/20190128223118.5255-1-richard.henderson@linaro.org -> patchew/20190128223118.5255-1-richard.henderson@linaro.org
Switched to a new branch 'test'
edf251e560 tests/tcg/aarch64: Add bti smoke test
7a7646284f linux-user/aarch64: Reset btype for syscalls and signals
59d6dcfdca target/arm: Enable BTI for -cpu max
f7377fcdc1 target/arm: Add x-guarded-pages cpu property for user-only
23690ae82f target/arm: Set btype for indirect branches
10de2a2461 target/arm: Reset btype for direct branches
a12bad9666 target/arm: Default handling of BTYPE during translation
d0f08030ef target/arm: Cache the GP bit for a page in MemTxAttrs
b226128ce3 exec: Add target-specific tlb bits to MemTxAttrs
7eab305810 target/arm: Add BT and BTYPE to tb->flags
49f36a5c20 target/arm: Add PSTATE.BTYPE
ef5152464e target/arm: Introduce isar_feature_aa64_bti

=== OUTPUT BEGIN ===
1/12 Checking commit ef5152464e73 (target/arm: Introduce isar_feature_aa64_bti)
2/12 Checking commit 49f36a5c2086 (target/arm: Add PSTATE.BTYPE)
3/12 Checking commit 7eab30581026 (target/arm: Add BT and BTYPE to tb->flags)
4/12 Checking commit b226128ce320 (exec: Add target-specific tlb bits to MemTxAttrs)
ERROR: spaces prohibited around that ':' (ctx:WxW)
#28: FILE: include/exec/memattrs.h:47:
+    unsigned int target_tlb_bit0 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#29: FILE: include/exec/memattrs.h:48:
+    unsigned int target_tlb_bit1 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#30: FILE: include/exec/memattrs.h:49:
+    unsigned int target_tlb_bit2 : 1;
                                  ^

total: 3 errors, 0 warnings, 16 lines checked

Patch 4/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

5/12 Checking commit d0f08030ef1d (target/arm: Cache the GP bit for a page in MemTxAttrs)
6/12 Checking commit a12bad9666e5 (target/arm: Default handling of BTYPE during translation)
ERROR: return is not a function, parentheses are not required
#97: FILE: target/arm/translate-a64.c:13757:
+    return (tlb_hit(entry->addr_code, addr) &&

total: 1 errors, 0 warnings, 196 lines checked

Patch 6/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

7/12 Checking commit 10de2a246194 (target/arm: Reset btype for direct branches)
8/12 Checking commit 23690ae82f20 (target/arm: Set btype for indirect branches)
9/12 Checking commit f7377fcdc121 (target/arm: Add x-guarded-pages cpu property for user-only)
10/12 Checking commit 59d6dcfdca71 (target/arm: Enable BTI for -cpu max)
11/12 Checking commit 7a7646284f29 (linux-user/aarch64: Reset btype for syscalls and signals)
12/12 Checking commit edf251e5609e (tests/tcg/aarch64: Add bti smoke test)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#32: 
new file mode 100644

ERROR: externs should be avoided in .c files
#116: FILE: tests/tcg/aarch64/bti-crt.inc.c:13:
+int main(void);

total: 1 errors, 1 warnings, 128 lines checked

Patch 12/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20190128223118.5255-1-richard.henderson@linaro.org/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
no-reply@patchew.org Jan. 31, 2019, 6:34 p.m. UTC | #5
Patchew URL: https://patchew.org/QEMU/20190128223118.5255-1-richard.henderson@linaro.org/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Subject: [Qemu-devel] [PATCH v2 00/12] target/arm: Implement ARMv8.5-BTI
Message-id: 20190128223118.5255-1-richard.henderson@linaro.org
Type: series

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 - [tag update]      patchew/20190128223118.5255-1-richard.henderson@linaro.org -> patchew/20190128223118.5255-1-richard.henderson@linaro.org
Submodule 'capstone' (https://git.qemu.org/git/capstone.git) registered for path 'capstone'
Submodule 'dtc' (https://git.qemu.org/git/dtc.git) registered for path 'dtc'
Submodule 'roms/QemuMacDrivers' (https://git.qemu.org/git/QemuMacDrivers.git) registered for path 'roms/QemuMacDrivers'
Submodule 'roms/SLOF' (https://git.qemu.org/git/SLOF.git) registered for path 'roms/SLOF'
Submodule 'roms/ipxe' (https://git.qemu.org/git/ipxe.git) registered for path 'roms/ipxe'
Submodule 'roms/openbios' (https://git.qemu.org/git/openbios.git) registered for path 'roms/openbios'
Submodule 'roms/openhackware' (https://git.qemu.org/git/openhackware.git) registered for path 'roms/openhackware'
Submodule 'roms/qemu-palcode' (https://git.qemu.org/git/qemu-palcode.git) registered for path 'roms/qemu-palcode'
Submodule 'roms/seabios' (https://git.qemu.org/git/seabios.git/) registered for path 'roms/seabios'
Submodule 'roms/seabios-hppa' (https://github.com/hdeller/seabios-hppa.git) registered for path 'roms/seabios-hppa'
Submodule 'roms/sgabios' (https://git.qemu.org/git/sgabios.git) registered for path 'roms/sgabios'
Submodule 'roms/skiboot' (https://git.qemu.org/git/skiboot.git) registered for path 'roms/skiboot'
Submodule 'roms/u-boot' (https://git.qemu.org/git/u-boot.git) registered for path 'roms/u-boot'
Submodule 'roms/u-boot-sam460ex' (https://git.qemu.org/git/u-boot-sam460ex.git) registered for path 'roms/u-boot-sam460ex'
Submodule 'tests/fp/berkeley-softfloat-3' (https://github.com/cota/berkeley-softfloat-3) registered for path 'tests/fp/berkeley-softfloat-3'
Submodule 'tests/fp/berkeley-testfloat-3' (https://github.com/cota/berkeley-testfloat-3) registered for path 'tests/fp/berkeley-testfloat-3'
Submodule 'ui/keycodemapdb' (https://git.qemu.org/git/keycodemapdb.git) registered for path 'ui/keycodemapdb'
Cloning into 'capstone'...
Submodule path 'capstone': checked out '22ead3e0bfdb87516656453336160e0a37b066bf'
Cloning into 'dtc'...
Submodule path 'dtc': checked out '88f18909db731a627456f26d779445f84e449536'
Cloning into 'roms/QemuMacDrivers'...
Submodule path 'roms/QemuMacDrivers': checked out 'd4e7d7ac663fcb55f1b93575445fcbca372f17a7'
Cloning into 'roms/SLOF'...
Submodule path 'roms/SLOF': checked out '9b7ab2fa020341dee8bf9df6c9cf40003e0136df'
Cloning into 'roms/ipxe'...
Submodule path 'roms/ipxe': checked out 'de4565cbe76ea9f7913a01f331be3ee901bb6e17'
Cloning into 'roms/openbios'...
Submodule path 'roms/openbios': checked out '441a84d3a642a10b948369c63f32367e8ff6395b'
Cloning into 'roms/openhackware'...
Submodule path 'roms/openhackware': checked out 'c559da7c8eec5e45ef1f67978827af6f0b9546f5'
Cloning into 'roms/qemu-palcode'...
Submodule path 'roms/qemu-palcode': checked out '51c237d7e20d05100eacadee2f61abc17e6bc097'
Cloning into 'roms/seabios'...
Submodule path 'roms/seabios': checked out 'a698c8995ffb2838296ec284fe3c4ad33dfca307'
Cloning into 'roms/seabios-hppa'...
Submodule path 'roms/seabios-hppa': checked out '1ef99a01572c2581c30e16e6fe69e9ea2ef92ce0'
Cloning into 'roms/sgabios'...
Submodule path 'roms/sgabios': checked out 'cbaee52287e5f32373181cff50a00b6c4ac9015a'
Cloning into 'roms/skiboot'...
Submodule path 'roms/skiboot': checked out 'e0ee24c27a172bcf482f6f2bc905e6211c134bcc'
Cloning into 'roms/u-boot'...
Submodule path 'roms/u-boot': checked out 'd85ca029f257b53a96da6c2fb421e78a003a9943'
Cloning into 'roms/u-boot-sam460ex'...
Submodule path 'roms/u-boot-sam460ex': checked out '60b3916f33e617a815973c5a6df77055b2e3a588'
Cloning into 'tests/fp/berkeley-softfloat-3'...
Submodule path 'tests/fp/berkeley-softfloat-3': checked out 'b64af41c3276f97f0e181920400ee056b9c88037'
Cloning into 'tests/fp/berkeley-testfloat-3'...
Submodule path 'tests/fp/berkeley-testfloat-3': checked out '5a59dcec19327396a011a17fd924aed4fec416b3'
Cloning into 'ui/keycodemapdb'...
Submodule path 'ui/keycodemapdb': checked out '6b3d716e2b6472eb7189d3220552280ef3d832ce'
Switched to a new branch 'test'
edf251e tests/tcg/aarch64: Add bti smoke test
7a76462 linux-user/aarch64: Reset btype for syscalls and signals
59d6dcf target/arm: Enable BTI for -cpu max
f7377fc target/arm: Add x-guarded-pages cpu property for user-only
23690ae target/arm: Set btype for indirect branches
10de2a2 target/arm: Reset btype for direct branches
a12bad9 target/arm: Default handling of BTYPE during translation
d0f0803 target/arm: Cache the GP bit for a page in MemTxAttrs
b226128 exec: Add target-specific tlb bits to MemTxAttrs
7eab305 target/arm: Add BT and BTYPE to tb->flags
49f36a5 target/arm: Add PSTATE.BTYPE
ef51524 target/arm: Introduce isar_feature_aa64_bti

=== OUTPUT BEGIN ===
1/12 Checking commit ef5152464e73 (target/arm: Introduce isar_feature_aa64_bti)
2/12 Checking commit 49f36a5c2086 (target/arm: Add PSTATE.BTYPE)
3/12 Checking commit 7eab30581026 (target/arm: Add BT and BTYPE to tb->flags)
4/12 Checking commit b226128ce320 (exec: Add target-specific tlb bits to MemTxAttrs)
ERROR: spaces prohibited around that ':' (ctx:WxW)
#28: FILE: include/exec/memattrs.h:47:
+    unsigned int target_tlb_bit0 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#29: FILE: include/exec/memattrs.h:48:
+    unsigned int target_tlb_bit1 : 1;
                                  ^

ERROR: spaces prohibited around that ':' (ctx:WxW)
#30: FILE: include/exec/memattrs.h:49:
+    unsigned int target_tlb_bit2 : 1;
                                  ^

total: 3 errors, 0 warnings, 16 lines checked

Patch 4/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

5/12 Checking commit d0f08030ef1d (target/arm: Cache the GP bit for a page in MemTxAttrs)
6/12 Checking commit a12bad9666e5 (target/arm: Default handling of BTYPE during translation)
ERROR: return is not a function, parentheses are not required
#97: FILE: target/arm/translate-a64.c:13757:
+    return (tlb_hit(entry->addr_code, addr) &&

total: 1 errors, 0 warnings, 196 lines checked

Patch 6/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

7/12 Checking commit 10de2a246194 (target/arm: Reset btype for direct branches)
8/12 Checking commit 23690ae82f20 (target/arm: Set btype for indirect branches)
9/12 Checking commit f7377fcdc121 (target/arm: Add x-guarded-pages cpu property for user-only)
10/12 Checking commit 59d6dcfdca71 (target/arm: Enable BTI for -cpu max)
11/12 Checking commit 7a7646284f29 (linux-user/aarch64: Reset btype for syscalls and signals)
12/12 Checking commit edf251e5609e (tests/tcg/aarch64: Add bti smoke test)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#32: 
new file mode 100644

ERROR: externs should be avoided in .c files
#116: FILE: tests/tcg/aarch64/bti-crt.inc.c:13:
+int main(void);

total: 1 errors, 1 warnings, 128 lines checked

Patch 12/12 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20190128223118.5255-1-richard.henderson@linaro.org/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
Peter Maydell Feb. 4, 2019, 1:09 p.m. UTC | #6
On Mon, 28 Jan 2019 at 22:31, Richard Henderson
<richard.henderson@linaro.org> wrote:
>

> The branch target identification extension does not yet have

> kernel or gcc support.  It should be in shape for developing

> those though.

>

> In system mode I do honor the GP bit from the page tables.

> In user-only mode, there is a way to pretend that the GP bit

> is always set.  Further linux-user changes will have to track

> the ABI that gets developed.

>

> In the meantime, provide a statically linable make check-tcg

> test for the functionality.

>

> Changes since v2:

>   * Rebase on master.

>   * Incorporate feedback from Peter.


I've applied patches 1-8 and 10 to target-arm.next, which gives
us the system emulation part. The linux-user support I've given
some review comments on.

thanks
-- PMM