Skip to content

Commit 48202c7

Browse files
committed
Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20210119-1' into staging
target-arm queue: * Implement IMPDEF pauth algorithm * Support ARMv8.4-SEL2 * Fix bug where we were truncating predicate vector lengths in SVE insns * npcm7xx_adc-test: Fix memleak in adc_qom_set * target/arm/m_helper: Silence GCC 10 maybe-uninitialized error * docs: Build and install all the docs in a single manual # gpg: Signature made Tue 19 Jan 2021 15:46:34 GMT # gpg: using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE # gpg: issuer "[email protected]" # gpg: Good signature from "Peter Maydell <[email protected]>" [ultimate] # gpg: aka "Peter Maydell <[email protected]>" [ultimate] # gpg: aka "Peter Maydell <[email protected]>" [ultimate] # Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83 15CF 3C25 25ED 1436 0CDE * remotes/pmaydell/tags/pull-target-arm-20210119-1: (29 commits) docs: Build and install all the docs in a single manual target/arm/m_helper: Silence GCC 10 maybe-uninitialized error npcm7xx_adc-test: Fix memleak in adc_qom_set target/arm: Update REV, PUNPK for pred_desc target/arm: Update ZIP, UZP, TRN for pred_desc target/arm: Update PFIRST, PNEXT for pred_desc target/arm: Introduce PREDDESC field definitions target/arm: refactor vae1_tlbmask() target/arm: enable Secure EL2 in max CPU target/arm: Implement SCR_EL2.EEL2 target/arm: revector to run-time pick target EL target/arm: set HPFAR_EL2.NS on secure stage 2 faults target/arm: secure stage 2 translation regime target/arm: generalize 2-stage page-walk condition target/arm: translate NS bit in page-walks target/arm: do S1_ptw_translate() before address space lookup target/arm: handle VMID change in secure state target/arm: add ARMv8.4-SEL2 system registers target/arm: add MMU stage 1 for Secure EL2 target/arm: add 64-bit S-EL2 to EL exception table ... Signed-off-by: Peter Maydell <[email protected]>
2 parents f1fcb68 + b93f4fb commit 48202c7

30 files changed

+771
-439
lines changed

.gitlab-ci.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -622,8 +622,8 @@ pages:
622622
-t "Welcome to the QEMU sourcecode"
623623
- mv HTML public/src
624624
# Project documentation
625-
- mv build/docs/index.html public/
626-
- for i in devel interop specs system tools user ; do mv build/docs/$i public/ ; done
625+
- make -C build install DESTDIR=$(pwd)/temp-install
626+
- mv temp-install/usr/local/share/doc/qemu/* public/
627627
artifacts:
628628
paths:
629629
- public

docs/conf.py

+45-1
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,51 @@
224224

225225
# -- Options for manual page output ---------------------------------------
226226
# Individual manual/conf.py can override this to create man pages
227-
man_pages = []
227+
man_pages = [
228+
('interop/qemu-ga', 'qemu-ga',
229+
'QEMU Guest Agent',
230+
['Michael Roth <[email protected]>'], 8),
231+
('interop/qemu-ga-ref', 'qemu-ga-ref',
232+
'QEMU Guest Agent Protocol Reference',
233+
[], 7),
234+
('interop/qemu-qmp-ref', 'qemu-qmp-ref',
235+
'QEMU QMP Reference Manual',
236+
[], 7),
237+
('interop/qemu-storage-daemon-qmp-ref', 'qemu-storage-daemon-qmp-ref',
238+
'QEMU Storage Daemon QMP Reference Manual',
239+
[], 7),
240+
('system/qemu-manpage', 'qemu',
241+
'QEMU User Documentation',
242+
['Fabrice Bellard'], 1),
243+
('system/qemu-block-drivers', 'qemu-block-drivers',
244+
'QEMU block drivers reference',
245+
['Fabrice Bellard and the QEMU Project developers'], 7),
246+
('system/qemu-cpu-models', 'qemu-cpu-models',
247+
'QEMU CPU Models',
248+
['The QEMU Project developers'], 7),
249+
('tools/qemu-img', 'qemu-img',
250+
'QEMU disk image utility',
251+
['Fabrice Bellard'], 1),
252+
('tools/qemu-nbd', 'qemu-nbd',
253+
'QEMU Disk Network Block Device Server',
254+
['Anthony Liguori <[email protected]>'], 8),
255+
('tools/qemu-pr-helper', 'qemu-pr-helper',
256+
'QEMU persistent reservation helper',
257+
[], 8),
258+
('tools/qemu-storage-daemon', 'qemu-storage-daemon',
259+
'QEMU storage daemon',
260+
[], 1),
261+
('tools/qemu-trace-stap', 'qemu-trace-stap',
262+
'QEMU SystemTap trace tool',
263+
[], 1),
264+
('tools/virtfs-proxy-helper', 'virtfs-proxy-helper',
265+
'QEMU 9p virtfs proxy filesystem helper',
266+
['M. Mohan Kumar'], 1),
267+
('tools/virtiofsd', 'virtiofsd',
268+
'QEMU virtio-fs shared file system daemon',
269+
['Stefan Hajnoczi <[email protected]>',
270+
'Masayoshi Mizuma <[email protected]>'], 1),
271+
]
228272

229273
# -- Options for Texinfo output -------------------------------------------
230274

docs/devel/conf.py

-15
This file was deleted.

docs/index.html.in

-17
This file was deleted.

docs/interop/conf.py

-28
This file was deleted.

docs/meson.build

+25-39
Original file line numberDiff line numberDiff line change
@@ -46,73 +46,59 @@ if build_docs
4646
meson.source_root() / 'docs/sphinx/qmp_lexer.py',
4747
qapi_gen_depends ]
4848

49-
configure_file(output: 'index.html',
50-
input: files('index.html.in'),
51-
configuration: {'VERSION': meson.project_version()},
52-
install_dir: qemu_docdir)
53-
manuals = [ 'devel', 'interop', 'tools', 'specs', 'system', 'user' ]
5449
man_pages = {
55-
'interop' : {
5650
'qemu-ga.8': (have_tools ? 'man8' : ''),
5751
'qemu-ga-ref.7': 'man7',
5852
'qemu-qmp-ref.7': 'man7',
5953
'qemu-storage-daemon-qmp-ref.7': (have_tools ? 'man7' : ''),
60-
},
61-
'tools': {
6254
'qemu-img.1': (have_tools ? 'man1' : ''),
6355
'qemu-nbd.8': (have_tools ? 'man8' : ''),
6456
'qemu-pr-helper.8': (have_tools ? 'man8' : ''),
6557
'qemu-storage-daemon.1': (have_tools ? 'man1' : ''),
6658
'qemu-trace-stap.1': (config_host.has_key('CONFIG_TRACE_SYSTEMTAP') ? 'man1' : ''),
6759
'virtfs-proxy-helper.1': (have_virtfs_proxy_helper ? 'man1' : ''),
6860
'virtiofsd.1': (have_virtiofsd ? 'man1' : ''),
69-
},
70-
'system': {
7161
'qemu.1': 'man1',
7262
'qemu-block-drivers.7': 'man7',
7363
'qemu-cpu-models.7': 'man7'
74-
},
7564
}
7665

7766
sphinxdocs = []
7867
sphinxmans = []
79-
foreach manual : manuals
80-
private_dir = meson.current_build_dir() / (manual + '.p')
81-
output_dir = meson.current_build_dir() / manual
82-
input_dir = meson.current_source_dir() / manual
8368

84-
this_manual = custom_target(manual + ' manual',
69+
private_dir = meson.current_build_dir() / 'manual.p'
70+
output_dir = meson.current_build_dir() / 'manual'
71+
input_dir = meson.current_source_dir()
72+
73+
this_manual = custom_target('QEMU manual',
8574
build_by_default: build_docs,
86-
output: [manual + '.stamp'],
87-
input: [files('conf.py'), files(manual / 'conf.py')],
88-
depfile: manual + '.d',
75+
output: 'docs.stamp',
76+
input: files('conf.py'),
77+
depfile: 'docs.d',
8978
depend_files: sphinx_extn_depends,
9079
command: [SPHINX_ARGS, '-Ddepfile=@DEPFILE@',
9180
'-Ddepfile_stamp=@OUTPUT0@',
9281
'-b', 'html', '-d', private_dir,
9382
input_dir, output_dir])
94-
sphinxdocs += this_manual
95-
if build_docs and manual != 'devel'
96-
install_subdir(output_dir, install_dir: qemu_docdir)
97-
endif
83+
sphinxdocs += this_manual
84+
install_subdir(output_dir, install_dir: qemu_docdir, strip_directory: true)
9885

99-
these_man_pages = []
100-
install_dirs = []
101-
foreach page, section : man_pages.get(manual, {})
102-
these_man_pages += page
103-
install_dirs += section == '' ? false : get_option('mandir') / section
104-
endforeach
105-
if these_man_pages.length() > 0
106-
sphinxmans += custom_target(manual + ' man pages',
107-
build_by_default: build_docs,
108-
output: these_man_pages,
109-
input: this_manual,
110-
install: build_docs,
111-
install_dir: install_dirs,
112-
command: [SPHINX_ARGS, '-b', 'man', '-d', private_dir,
113-
input_dir, meson.current_build_dir()])
114-
endif
86+
these_man_pages = []
87+
install_dirs = []
88+
foreach page, section : man_pages
89+
these_man_pages += page
90+
install_dirs += section == '' ? false : get_option('mandir') / section
11591
endforeach
92+
93+
sphinxmans += custom_target('QEMU man pages',
94+
build_by_default: build_docs,
95+
output: these_man_pages,
96+
input: this_manual,
97+
install: build_docs,
98+
install_dir: install_dirs,
99+
command: [SPHINX_ARGS, '-b', 'man', '-d', private_dir,
100+
input_dir, meson.current_build_dir()])
101+
116102
alias_target('sphinxdocs', sphinxdocs)
117103
alias_target('html', sphinxdocs)
118104
alias_target('man', sphinxmans)

docs/specs/conf.py

-16
This file was deleted.

docs/system/arm/cpu-features.rst

+21
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,27 @@ the list of KVM VCPU features and their descriptions.
211211
influence the guest scheduler behavior and/or be
212212
exposed to the guest userspace.
213213

214+
TCG VCPU Features
215+
=================
216+
217+
TCG VCPU features are CPU features that are specific to TCG.
218+
Below is the list of TCG VCPU features and their descriptions.
219+
220+
pauth Enable or disable `FEAT_Pauth`, pointer
221+
authentication. By default, the feature is
222+
enabled with `-cpu max`.
223+
224+
pauth-impdef When `FEAT_Pauth` is enabled, either the
225+
*impdef* (Implementation Defined) algorithm
226+
is enabled or the *architected* QARMA algorithm
227+
is enabled. By default the impdef algorithm
228+
is disabled, and QARMA is enabled.
229+
230+
The architected QARMA algorithm has good
231+
cryptographic properties, but can be quite slow
232+
to emulate. The impdef algorithm used by QEMU
233+
is non-cryptographic but significantly faster.
234+
214235
SVE CPU Properties
215236
==================
216237

docs/system/conf.py

-28
This file was deleted.

docs/tools/conf.py

-37
This file was deleted.

docs/user/conf.py

-15
This file was deleted.

0 commit comments

Comments
 (0)