Commit graph

179 commits

Author SHA1 Message Date
Alexandre Courbot
bda417d9ff docs: books: update instructions for using ffmpeg in the guest
Ffmpeg can now reliably be used in the guest to decode VP8 or VP9
streams, so update the instructions to showcase this.

BUG=b:235067555
TEST=mdbook build

Change-Id: If3af1797d8bc686167292e3859d6a4f08bfe2b41
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3841483
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Tatsuyuki Ishi <ishitatsuyuki@google.com>
Commit-Queue: Alexandre Courbot <acourbot@chromium.org>
Tested-by: Alexandre Courbot <acourbot@chromium.org>
2022-08-24 00:31:39 +00:00
Tatsuyuki Ishi
48fbede24a docs: book: Fix dead link
BUG=None
TEST=mdbook build + click the link

Change-Id: I3da84175f4aa8345069cf4e2f64d5e2211b6d872
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3849207
Auto-Submit: Tatsuyuki Ishi <ishitatsuyuki@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: Tatsuyuki Ishi <ishitatsuyuki@google.com>
Commit-Queue: Tatsuyuki Ishi <ishitatsuyuki@google.com>
2022-08-23 02:38:28 +00:00
Andrew Walbran
3fcf6e68eb Allocate more RAM for pVM firmware.
We would like 2 MiB for runtime data as well as the 2 MiB image.

TEST=tools/dev_container tools/run_tests --target=vm:aarch64

Change-Id: I0c0cba35bfc6cf6d8c54afd7df8bd929726e2053
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3827214
Commit-Queue: Andrew Walbran <qwandor@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: Andrew Walbran <qwandor@google.com>
2022-08-17 09:54:33 +00:00
Junichi Uekawa
eefbf6da74 Revert "crosvm: Embed seccomp filters into binary"
This reverts commit a78f92cdb2.

Reason for revert: doesn't build on Chrome OS

Original change's description:
> crosvm: Embed seccomp filters into binary
>
> Seccomp policy files will now pre-compile to bpf bytecode for
> target architecture and embedded in the crosvm binary.
> When minijail is not checked out in crosvm tree as a submodule,
> MINIJAIL_DIR environment variable needs to be specified for the
> policy compiler to run.
>
> TEST=all tests passed, vm runs fine with sandbox on and no separate
> policy files present.
> BUG=b:235858187
>
> Change-Id: Ia801966df0a8adfdc4a80f5899e33121fe45e5f9
> Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3774318
> Reviewed-by: Dennis Kempin <denniskempin@google.com>
> Commit-Queue: Zihan Chen <zihanchen@google.com>
> Tested-by: Zihan Chen <zihanchen@google.com>

Bug: b:235858187
Change-Id: Ia81e43185d5f16bd061b6d0290befb4642c44548
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3813056
Tested-by: Junichi Uekawa <uekawa@chromium.org>
Commit-Queue: Junichi Uekawa <uekawa@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-08-05 07:20:52 +00:00
Zihan Chen
a78f92cdb2 crosvm: Embed seccomp filters into binary
Seccomp policy files will now pre-compile to bpf bytecode for
target architecture and embedded in the crosvm binary.
When minijail is not checked out in crosvm tree as a submodule,
MINIJAIL_DIR environment variable needs to be specified for the
policy compiler to run.

TEST=all tests passed, vm runs fine with sandbox on and no separate
policy files present.
BUG=b:235858187

Change-Id: Ia801966df0a8adfdc4a80f5899e33121fe45e5f9
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3774318
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Commit-Queue: Zihan Chen <zihanchen@google.com>
Tested-by: Zihan Chen <zihanchen@google.com>
2022-08-05 00:26:41 +00:00
Keita Suzuki
fa2efe4233 docs: book: add caveats section to VVU docs
The current documentation of VVU page did not include some important
information to reproduce the example such as the configuration of the
device guest kernel, or the requirement of setting the memory size of
sibling VM smaller than the device VM.

Add these information in the caveats section.

BUG=b:240398088
TEST=mdbook build

Change-Id: Ic391cd8099412b46acb52f49683cd702bfd54197
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3790664
Tested-by: Keita Suzuki <suzukikeita@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Morg <morg@chromium.org>
Commit-Queue: Keita Suzuki <suzukikeita@google.com>
2022-08-02 09:27:00 +00:00
Keita Suzuki
108f7fc694 doc: Fix minor typos in some docs
Fix couple of minor typos in some of the doc file.

BUG=None
TEST=mdbook build

Change-Id: I0034da788e6418ebddeb484ff58f657c0d71432b
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3791491
Reviewed-by: Morg <morg@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: Keita Suzuki <suzukikeita@google.com>
Commit-Queue: Keita Suzuki <suzukikeita@google.com>
2022-08-02 09:02:50 +00:00
Daniel Verkamp
8930ba079f crosvm: update book and doc links to crosvm.dev
Replaced using this script:

git grep -l 'https://google.github.io/crosvm' \
 | xargs -n1 sed -i \
 -e 's^https://google.github.io/crosvm/doc/^https://crosvm.dev/doc/^g' \
 -e 's^https://google.github.io/crosvm/^https://crosvm.dev/book/^g'

BUG=None
TEST=mdbook build doc/book

Change-Id: I8df4e0bcc1ca1e9044df29998572393c934e29cc
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3795005
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: Daniel Verkamp <dverkamp@chromium.org>
2022-07-29 22:54:01 +00:00
Elie Kheirallah
18d435aa17 Updating documentation for building crosvm.
Updating set_test_target to test_target.
Highlighting part that mentions running instructions inside the
container.

Bug=b:240336174
Test=None

Change-Id: I61efe14de02fe0fd98bd677a1cd8198b9085c6c7
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3788728
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: Elie Kheirallah <khei@google.com>
Commit-Queue: Elie Kheirallah <khei@google.com>
2022-07-27 20:54:20 +00:00
Dennis Kempin
89f754b0be docs: Fix link to building_crosvm.md
BUG=None
TEST=mdbook build docs/book

Change-Id: I5331cb9fed056c8b57171ba3db4d5b2521e6995c
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3782185
Auto-Submit: Dennis Kempin <denniskempin@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Tested-by: Dennis Kempin <denniskempin@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
2022-07-22 01:52:58 +00:00
Dennis Kempin
b97b89fc0f Update ChromeOS Docs
Reflecting the new repository, supported workflows
and code submission process.

BUG=b:239255196
TEST=None

Change-Id: I52d7130ec3d72ea5ef8748875cae029f0b1f701b
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3780864
Auto-Submit: Dennis Kempin <denniskempin@google.com>
Tested-by: Dennis Kempin <denniskempin@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2022-07-21 18:35:51 +00:00
Sebastian Ene
acb1f6683c vmwdt: Add memory mapped watchdog backend driver
This adds a new dt node identified by "qemu,vm-watchdog". The watchdog
is instantiated per-cpu and each instance has the following layout
described in this document:
https://docs.google.com/document/d/1DYmk2roxlwHZsOfcJi8xDMdWOHAmomvs2SDh7KPud3Y/edit?resourcekey=0-oSNabc-t040a1q0K4cyI8Q#heading=h.4hbqud2zl941

The watchdog uses an internal clock which is driven by the
timerfd at regular intervals. When the internal clock expires, a counter
value is decremented. When the counter register reaches value "0",
the watchdog expires. To prevent 'watchdog expiration', regular pet
events should be sent from the guest kernel driver.

BUG=b:213422094
Signed-off-by: Sebastian Ene <sebastianene@google.com>
Change-Id: Ic8c0488ffdfed1a43b6deb34b72d37f46e5e18a2
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3768290
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2022-07-21 14:07:11 +00:00
Dennis Kempin
ed7d455a43 Switch main crosvm repo
This updates all references to chromiumos/platform/crosvm to
crosvm/crosvm.
It will also switch ./tools/cl to upload to the new main repository.

BUG=None
TEST=None

Change-Id: I1f71e5d5de2300e57ace1315cb4553f68533d576
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3760903
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: Dennis Kempin <denniskempin@google.com>
2022-07-14 17:58:26 +00:00
Alexandre Courbot
8249907797 docs: book: fix instructions for VVU
Fix a few typos in the instructions to start a VVU device.

BUG=b:196186396
TEST=Copy/paste the new instructions and make sure the device starts and
works.

Change-Id: I0726185fc9d7026a7d7d81a5678fb81350cac113
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3744908
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Junichi Uekawa <uekawa@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2022-07-05 10:33:54 +00:00
Dmitry Torokhov
264c805f04 devices: vvu: do not try to change driver for VVU devices
It is not the task of crosvm, which is usually unprivileged process, to
mess up with the system configuration, so it should simply expect that
VVU devices are already bound to vfio-pci driver and stop trying to do
it itself.

BUG=b:196186396
TEST=Boot redrix-manatee, start crostini.

Change-Id: Icb777cf66fd54bd74d656821fb76587c7ee70ca3
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3712552
Commit-Queue: Dmitry Torokhov <dtor@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: David Stevens <stevensd@chromium.org>
2022-07-02 19:33:21 +00:00
Kameron Lutes
d220083da9 crosvm: Add documentation for crosvm_control
Adds documentation and best practices for the crosvm_control library.

BUG=b:188858559
TEST=cq

Change-Id: I8b03b9b78e72e0d47489d145476e33aa4310fef2
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3717537
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Kameron Lutes <kalutes@chromium.org>
2022-06-24 04:55:42 +00:00
Alexandre Courbot
2e735a48cf docs: book: add documentation for the video device
Now that the ffmpeg decoder backend has been merged, anyone can try the
virtio-video device. Add a page on the book explaining how to do so.

BUG=b:235067555
TEST=mdbook build

Change-Id: I984b4953580274015900a80a378cab9c3eb7b2ac
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3708389
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Alexandre Courbot <acourbot@chromium.org>
2022-06-21 05:18:01 +00:00
Yi Chou
12ce514c0f Add VtpmProxy as a new TpmBackend
This CL will introduce a new TpmBackend called VTpmProxy.
This proxy will bridge the VM tpm device and the vtpm daemon on
ChromeOS.

BUG=b:227283268
TEST=Build OK.

Change-Id: Ibfbfdddbaca2af1d066920bb62918d88b0943d59
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3696292
Commit-Queue: Yi Chou <yich@google.com>
Reviewed-by: Chih-Yang Hsia <paulhsia@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Leo Lai <cylai@google.com>
2022-06-20 03:41:31 +00:00
Alexandre Courbot
c553d1c283 seccomp: define naming rules for policy files
We are going to use separate policy files per device for the following scenarios:

1) Regular in-VMM virtio device,
2) Virtio device over vhost-user,
3) Virtio device over Vvu.

Each of these scenarios require slightly different policies as a jailed
device process needs to allow not only the system calls necessary for
the device to function, but also those required by the virtio transport
in use.

This CL adds a README.md file to the seccomp directory that details the
naming and policy inclusion rules, and updates the serial, xhci and
coiommu policies to follow the naming scheme.

Vhost-user and VVU policy files will be added along with support for
jailing devices when they are in use.

BUG=b:217480043
TEST=serial device works with `crosvm run`.

Change-Id: I6d454aa6e05d00691fe3346e822ed1fc7b24aed8
Signed-off-by: Alexandre Courbot <acourbot@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3706490
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-06-17 04:35:09 +00:00
soichiro
f51e3a3ce2 docs: book: add balloon device docs
BUG=b:235067563
TEST=mdbook build

Change-Id: Ibf65e96adef4cebdd4356b7de55820018622ca01
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3697995
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Alexandre Courbot <acourbot@chromium.org>
2022-06-14 05:13:14 +00:00
Anton Romanov
7910b89eb3 crosvm: move run command to argh
Due to the way we allow arguments to be specified I was not able to
reuse Config structure for cmdline arguments. (eg we allow multiple ways
to specify same config)

There is still some usage of arguments mod that we need to cleanup
later.

Change-Id: Ia0c12d508d0a10d17f58944de71276e5984d69ee
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3684144
Auto-Submit: Anton Romanov <romanton@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Commit-Queue: Anton Romanov <romanton@google.com>
2022-06-13 23:55:20 +00:00
Daniel Verkamp
cdbe5cb842 docs: book: add pmem device docs
BUG=b:235067568
TEST=mdbook build

Change-Id: I38d58a4ce3910ad382c1cf3e7bdc5a43f5b0b4ac
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3692420
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
2022-06-13 20:06:44 +00:00
Daniel Verkamp
9cba352186 docs: book: link devices subpages from index
Replace the source code links with the documentation pages for the
devices that have them.

BUG=None
TEST=mdbook build docs/book
TEST=Verify that devices/index.html links to the right pages

Change-Id: Ie7e61adec9326466b2e1236fed4e768c2d5d3dd9
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3691975
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
2022-06-13 20:06:42 +00:00
Dennis Kempin
7522871fe2 Add new email lists to README.md and book
BUG=b:234519125
TEST=None

Change-Id: I8b4bed949fc66c87c5f2bf388b3d618b055244a7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3698994
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2022-06-13 19:39:11 +00:00
Keiichi Watanabe
45ed48f213 docs: Add a page about VVU
BUG=b:233174191
TEST=mdbook build
TEST=test in my github repo

Change-Id: Ib1692b1ad64f3f6219cd549044efadd749177c69
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3659819
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
2022-06-13 08:48:23 +00:00
Daniel Verkamp
9cac83921f docs: book: add --disk options
Document the various optional disk settings.

BUG=None
TEST=read mdbook

Change-Id: I0f797c840e35a7993d13386d2dc6e75e2898f854
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3691973
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
2022-06-13 03:45:45 +00:00
Daniel Verkamp
3eef0ed379 book: linkify the rustup.rs URL
BUG=None
TEST=mdbook build # test that rustup ref becomes a clickable link

Change-Id: Ieea42a363130ca42cea6db9133e2a8de94a1d275
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3691970
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
2022-06-07 17:37:15 +00:00
Keiichi Watanabe
ab9576ece6 docs: Add a page for vhost-user usage
BUG=b:233174191
TEST=mdbook build

Change-Id: I3fae676885a41ff6cd21b77f864a1379afe2a2ce
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3659818
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-06-03 03:11:23 +00:00
Keiichi Watanabe
c101f207da docs: Add a page about block device
BUG=b:233174191
TEST=mdbook build

Change-Id: I5a52dff7caa7cd151d1ad382be1bd81cb13e1369
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3659817
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2022-06-03 03:11:22 +00:00
Keiichi Watanabe
3f7932c6b1 docs: Split net/wayland sections into individual pages
BUG=none
TEST=mdbook build

Change-Id: I6941b8e8a67562110af4255f94e8660a8fa7bd6c
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3607793
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
2022-06-03 03:11:21 +00:00
Keiichi Watanabe
1f8455fc61 docs: Add "Devices" chapter
To explain use of various devices, let's have a separate chapter.

BUG=none
TEST=mdbook build

Change-Id: I0fe9926f9e6b97731a3a19d7b5f59b0eb2d1cf73
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3607792
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-06-03 03:11:20 +00:00
Junichi Uekawa
3cb328aa10 crosvm: Script for rebasing on main from chromeos branch.
chromeos branch is a stable base to work on, but patches need to land on
the main branch. For uploading to that directory, it's always necessary
to rebase onto that branch.

BUG=b:227535695
TEST=rebase_for_review && repo upload --cbr .

Change-Id: I5f41e52f91adf15ade84ae09f6b34dcdbe733d23
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3565627
Commit-Queue: Junichi Uekawa <uekawa@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2022-05-30 07:26:07 +00:00
Peter Collingbourne
09f4513745 book: document that --gdb is x86 only
Change-Id: I26599a7e95b2caf899ed5ca95c56b9c7219440d3
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3671957
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Auto-Submit: Peter Collingbourne <pcc@chromium.org>
Commit-Queue: Alexandre Courbot <acourbot@chromium.org>
2022-05-27 03:28:04 +00:00
Andrew Walbran
0465b61b1e Move PVTIME down below MMIO_BASE.
This leaves the region between 0x4000_0000 and the start of RAM free of
MMIO, which simplifies the stage 1 page table mappings needed by the
guest, and makes room for the pVM firmware allocation to be expanded.

TEST=tools/dev_container tools/run_tests --target=vm:aarch64

Change-Id: Ibae73a946cadd16e6f03559d23cc256f4b9d3f3d
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3627454
Commit-Queue: Andrew Walbran <qwandor@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Auto-Submit: Andrew Walbran <qwandor@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2022-05-06 13:01:31 +00:00
Andrew Walbran
d4bfea4bb9 Document memory layout.
Change-Id: I3ddd6b355a77527063886065ab2c576364709fc0
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3627453
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Auto-Submit: Andrew Walbran <qwandor@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Andrew Walbran <qwandor@google.com>
2022-05-06 12:09:40 +00:00
Noah Gold
fdd42b7b0e book: update cross platform code samples
Our original code sample was missing some elements in the use statements
that clarified how modules were organized with sys.

BUG=none
TEST=n/a

Change-Id: I62d6a294218fa7c9c5853dbefc6550de763e7c8e
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3614852
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Noah Gold <nkgold@google.com>
Reviewed-by: Vikram Auradkar <auradkar@google.com>
2022-05-02 20:59:59 +00:00
Noah Gold
b36bfca634 book: document using crosvm tools in cros tree.
BUG=none
TEST=n/a

Change-Id: Ifee38e534fe13a148c8a57fca7aae1b95c944175
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3617162
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Noah Gold <nkgold@google.com>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2022-04-29 19:10:42 +00:00
Dennis Kempin
970b00fa4d Add documentation for ChromeOS workflows
This change consolidates some of the spread out information about
what ChromeOS developers need to know about crosvms differences to
other ChromeOS projects.

I created a new directory since I would expect a similar guide for
AOSP eventually.

This also adds more documentation on some of the process changes
suggested in go/crosvm-merge-improvements to improve the
stability of the merge process.

BUG=b:227475914
TEST=None

Change-Id: I08111ecd5a937fde22c7d97f342c1cf02f49b02e
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3561886
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-18 19:05:49 +00:00
Vikram Auradkar
a0c4acaf80 book: Add style guide
BUG=b:227345067
TEST=mdbook build

Change-Id: I689b8f92512ed8b97872c67b6bf31833a7fa78a5
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3557813
Reviewed-by: Noah Gold <nkgold@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Vikram Auradkar <auradkar@google.com>
2022-04-13 13:49:50 +00:00
Kameron Lutes
cd0e7edcc7 Docs: Fix kernel config build steps
ChromeOS moved to using split config, so update the build steps for a
custom kernel to reflect the new procedure.

BUG=b:228107412
TEST=Follow the custom kernel rootfs steps with the new config steps

Change-Id: Ib8f7d8748897fb6b907d0da4c25e2cccba1c5954
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3570172
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Kameron Lutes <kalutes@chromium.org>
2022-04-06 23:58:34 +00:00
Alexandre Courbot
3e28ed0f5f mdbook: add instructions for enabling and running Wayland
It is now relatively easy to build and run sommelier against a regular
Linux guest, and doing so enables the powerful feature of being able to
show guest Wayland clients on a compositor running on the host. Document
the process for those interested in doing it.

BUG=None
TEST=mdbook serve
TEST=./tools/fmt --check

Change-Id: I45b99243481ee66c1e88e597669a219a4e5b9376
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3531694
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Alexandre Courbot <acourbot@chromium.org>
2022-03-23 04:00:26 +00:00
Jon Murphy
08942a789e COIL: Migrate master to HEAD
Update links still pointing to master, update to point to HEAD

BUG=b:224796805
TEST=navigate to updated link and/or N/A

Change-Id: I1777c32e4e455cfeb95cf82c944d1adbca350767
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3525743
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2022-03-16 01:01:11 +00:00
Woody Chow
18c6548614 docs: Fix setup_network script path in example_usage.md
`setup_networking` does not exist
https://chromium.googlesource.com/chromiumos/platform/crosvm/+/refs/heads/main/tools/examples/setup_network

BUG=None
TEST=None

Change-Id: I8f79b4fc4e5ba7ed8432105a1d9d6ffc4b506578
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3490466
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Woody Chow <woodychow@google.com>
2022-02-25 04:00:26 +00:00
Keiichi Watanabe
eb5207aa29 docs: Enable mdbook-linkcheck
Use https://github.com/Michael-F-Bryan/mdbook-linkcheck to check broken
links. Since this is added as a target in book.toml, the check will run
while `mdbook build`.

BUG=none
TEST=Run `mdbook build`

Change-Id: I7615953f9428c2f8a7a4ec456bb6ae92ede55c68
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3423291
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2022-02-02 02:52:54 +00:00
Keiichi Watanabe
292b50cd64 docs: Cosmetic changes for code blocks
* Remove leading `$`s so that readers can copy and pastes commands more
easily.
* Use `sh` instead of `bash` because `bash` is for scripts rather than
command line interfaces.

These rules are ones used in mdBook's instruction.
https://github.com/rust-lang/mdBook/tree/master/guide/src/guide

BUG=none
TEST=mdbook build

Change-Id: I3b35fa2c7b20ef10e3da78a47f41a1603744daf0
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3423292
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Auto-Submit: Keiichi Watanabe <keiichiw@chromium.org>
2022-02-01 10:39:31 +00:00
Keiichi Watanabe
6b7a9923ae docs: Fix broken links
BUG=none
TEST=mdbook build

Change-Id: I77bde44d5614ecab28c0b3c23e1c5f67c52235f4
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3423290
Auto-Submit: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2022-01-29 03:48:23 +00:00
Anton Romanov
5acc0f52f5 linux: split out linux mod into multiple
At nearly 4k loc its harder to maintain. This change only moves some
things around without changing any code. Input on symbol visibility is
welcome - in reality it doesn't really matter if symb is
pub/pub(super)/pub(crate) as mods themselves are private to linux mod.
I plan to invest more into splitting things apart if possible
(especially the main loop) but its a start

TEST=./tools/presubmit
BUG=n/a

Change-Id: I2792dd0acdb5627f1c9b5d0fb998c976c6fe5e15
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3422266
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Noah Gold <nkgold@google.com>
Reviewed-by: Anton Romanov <romanton@google.com>
Commit-Queue: Anton Romanov <romanton@google.com>
Auto-Submit: Anton Romanov <romanton@google.com>
2022-01-28 23:07:01 +00:00
Dennis Kempin
6b06f405ff docs: Use mdformat to format markdown files
The tool is added to ./tools/fmt which will be called during
./tools/presubmit as well as by Kokoro during testing.

This requires a new dev container version to bundle the mdformat
tool in the container.

Note: mdformat does not have any IDE integrations, but the prettier
plugin with prose-wrap enabled and a line length of 100 provides
almost identical results.

BUG=None
TEST=./tools/fmt --check

Change-Id: I0ae5659eff8555df7c85c70e62095a1e116b98da
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3416098
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
2022-01-27 21:29:11 +00:00
Dennis Kempin
cde666cd54 Reorganize usage doc and add example usage
BUG=b:214104901
TEST=mdbook serve

Change-Id: I7039493212912cb698f74967abef228df278f4c7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3399872
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
2022-01-27 21:29:10 +00:00
Dennis Kempin
151ae7eed4 Docs: remove --global from git config
This causes problems with repo and should only be set on the crosvm
repo.

BUG=None
TEST=None

Change-Id: Id63a60f9ccebf3f7785a1473d15d6a9f88f8cdd0
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3414497
Reviewed-by: Dmitry Torokhov <dtor@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-01-25 23:03:00 +00:00
Dennis Kempin
df640d068c Add functional crosvm examples for running on linux
Two examples are added. A simple one and one with network
configured.

The examples are written in a way they can be integrated
with the mdbook to form a tutorial. This will ensure the
tutorial code snippets stay up to date.

The documentation for networking is added after
https://crrev.com/c/3237468 is merged.

BUG=b:214104901
TEST=./tools/examples/example_simple

Change-Id: I33682878858d8a0324fbb6a87e33cd55b29811b7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3388063
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Tested-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-01-18 23:24:00 +00:00
Alexandre Courbot
cfe5ab52ea mdbook: add instructions for network device setup
BUG=none
TEST=mdbook serve

Change-Id: Id72c44201b248e20761ec38e2c892f5c4993ef46
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3237468
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Alexandre Courbot <acourbot@chromium.org>
2022-01-18 05:13:48 +00:00
Dennis Kempin
89ea04b4da ./tools/presubmit: Parallel execution and use dev container
The updated presubmit script allows parallel execution of checks
with --tmux.

It will also try to detect if the host is set up for aarch64 builds
and use the dev container if needed.

BUG=None
TEST=./tools/presubmit --tmux

Change-Id: I0247c39d826ee38d5f7f689de5e63380fe789cf4
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3292101
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2021-11-19 20:09:40 +00:00
Dennis Kempin
95b80d13b2 dev_container: Preserve container between calls
This vastly improves iterative build times and enables more flexible
usage of the container.

BUG=None
TEST=./tools/dev_container cargo build
First run will build everything. Second run will finish right away.

Change-Id: I9b4eeee0689f0e9d07f0a32f846d21ab42f689f7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3292100
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Junichi Uekawa <uekawa@chromium.org>
2021-11-19 20:09:39 +00:00
Junichi Uekawa
7225ebc077 crosvm: Sprinkle notes on API search.
It's not obvious it's possible to search API docs, it's one of the
things I would use the most often if it's reachable.

BUG=None
TEST=read it.

Change-Id: I29df6ae4df3eb667f17e22d0afc00aee80912187
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3267906
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2021-11-08 07:21:20 +00:00
Dennis Kempin
ccb9014afb Deprecate old dev tooling scripts
All of the developer tooling has moved to ./tools to make them
easier to discover.

BUG=None
TEST=None

Change-Id: I4daf6a0ca08c94a0c35ce8bc52f9d86e4cb15de9
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3251781
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
2021-11-02 22:23:03 +00:00
Junichi Uekawa
b933598310 crosvm: Add python3-pip dependency.
This is required for the following step.

Updated installation steps so that it is possible to follow the steps
and build.

BUG=chromium:1265286
TEST=./install-deps inside docker container running ubuntu.

Change-Id: Icd6b1c9c3c74c790aba2fd41050ebd2f3470e946
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3255185
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Junichi Uekawa <uekawa@chromium.org>
2021-11-01 23:58:39 +00:00
Keiichi Watanabe
1d0ef4d7a3 mdbook: Fix broken links detected by mdbook-linkcheck
Run mdbook-linkcheck locally and fix detected errors.
Note that we avoid running mdbook-linkcheck in CI, as its installation
takes ~1min.

BUG=none
TEST=run GitHub Action

Change-Id: I2bbd5f30486573454dc9ece86353296eca55be70
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3255194
Auto-Submit: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2021-11-01 19:07:01 +00:00
Keiichi Watanabe
cb14f61ce7 mdbook: Explain how to build a binary for beginner
Add a section to explain how to build crosvm binary for beginners who
may not have used cargo.
Also, ran mdformat on the file.

BUG=none
TEST=check

Change-Id: I902157cd471652b829d73bb27fc52e04db64d6d5
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3252186
Auto-Submit: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2021-10-29 16:43:56 +00:00
Keiichi Watanabe
105a94aaaf README: Use PNG logo image
Use PNG instead of SVG as Gitiles doesn't render SVG well.
In order to make ImageMagick's conversion work well, fill-opacity and
stroke-opacity are explicitly specified in the SVG.

Also, the PNG image will be put at the bottom of README so people can
read contents at first glance without scrolling over the logo.

BUG=none
TEST=check gitiles view on Gerrit
TEST=mdbook build

Change-Id: I2203be1258265400be3caf2ad8d8a1e8cacc5aab
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3250151
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2021-10-29 01:56:23 +00:00
Keiichi Watanabe
31ef2d0b76 mdbook: Add links to source code at top page
BUG=none
TEST=none

Change-Id: Ife7f1d7c8d5885f72e9b489e62735e8b236c1750
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3245056
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2021-10-28 10:44:45 +00:00
Keiichi Watanabe
feb0e8d728 CONTRIBUTING: Add code submit workflow
Explain how to submit a CL for non-Chromium OS developers.

BUG=none
TEST=none

Change-Id: I3ee0e47eac1f0320f4c086a895f91ebf5fbf2d74
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3241903
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2021-10-26 05:06:59 +00:00
Keiichi Watanabe
4a0ceade44 Add crosvm logo in README and mdbook
BUG=none
TEST=none

Change-Id: Ifc5851b2936fe11f28ddec66af6a5d3e42c2c047
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3237467
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2021-10-25 14:48:14 +00:00
Keiichi Watanabe
3e45862750 mdbook: Add page of "Basic Usage"
Add a starter document.
The most of content is moved from example usage doc [1] except GUI features.

[1]: https://google.github.io/crosvm/appendix/example_usage.html

BUG=b:195003973
TEST=none

Change-Id: I5fd1398795087edc1b41984cb579b59b9f34be5f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3188677
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2021-10-25 14:48:12 +00:00
Dennis Kempin
66431d7f45 Add onboarding resources to mdbook
This is converted from our onboarding doc with internal references
removed.

BUG=b:199926026
TEST=None

Change-Id: Ibb94e194583b12c1ec7fe3d80306156e34e50000
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3229948
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
2021-10-21 19:32:14 +00:00
Keiichi Watanabe
26b03d02bd mdbook: Fix typos in proper names and script paths
Apply changes of crrev.com/c/3236708 to mdbook

BUG=none
TEST=none

Change-Id: Ida84a9157197a435156957a7eccce07de16b9cec
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3237466
Auto-Submit: Keiichi Watanabe <keiichiw@chromium.org>
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2021-10-21 17:10:59 +00:00
Dennis Kempin
1b284f8dcd Docs: Update linux build instructions for new tooling
BUG=b:199951064
TEST=None

Change-Id: I7518790461f43a97db007eda86f56027f527ec95
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3226277
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2021-10-18 20:10:43 +00:00
Keiichi Watanabe
a493fc52d0 mdbook: Generate cargo-doc by GitHub Actions
BUG=b:199874828
TEST=run in my GitHub account

Change-Id: Ie456a90731ccedc4934a13110902ea153fce23ae
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3159891
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2021-10-06 15:10:23 +00:00
Keiichi Watanabe
eaaba5eb54 mdbook: Add more virtio devices in devices.md
BUG=b:195003973
TEST=none

Change-Id: Ie383d75f540ff4fc904d64e130d5c9ddb071a84e
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3067484
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2021-09-30 11:44:33 +00:00
Keiichi Watanabe
909d7f3c05 docs: Add ARCHITECTURE.md
It's a common idea to have ARCHITECTURE.md next to README.md and
CONTRIBUTING.md [1].
So, let's do so instead of having the doc only under mdbook.

[1] https://matklad.github.io//2021/02/06/ARCHITECTURE.md.html

BUG=b:195003973
TEST=mdbook build

Change-Id: I8d3f479ba65c7f85865c51b5c22fb5b37d6e8f78
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3188675
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2021-09-29 16:19:50 +00:00
Keiichi Watanabe
b8bfe8dd04 mdbook: miscellaneous cleanup
* Remove an unnecessary index in SUMMARY.md
* Fix section levels in usage.md

BUG=b:195003973
TEST=mdbook build

Change-Id: Icf97038f664d02d169f9db30f4999f053ed2ed81
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3188673
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2021-09-29 16:19:49 +00:00
Keiichi Watanabe
c912894ae9 docs: Run mdformat
Ran:
$ find ./docs/book/src/ -name "*.md" | xargs mdformat --in_place

BUG=none
TEST=mdbook build

Change-Id: I56c74538a4c2643fa2c6e33fe99660611442b4dc
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3188672
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
2021-09-29 16:19:48 +00:00
Keiichi Watanabe
eced721cc8 mdbook: Add 'Running Crosvm' section
BUG=b:199874828
TEST=mdbook build

Change-Id: I760ce0aa072fcc0194353ceaf2396357005b3aea
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3159888
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2021-09-20 12:45:44 +00:00
Keiichi Watanabe
db6b0170c8 mdbook: Add "Building Crosvm" section
Duplicate sections from README

BUG=b:199874828
TEST=mdbook build

Change-Id: Id097a4077f5e844bf36528fc49de887df6409c9e
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3159887
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2021-09-20 12:45:43 +00:00
Keiichi Watanabe
9ad1788661 mdbook: Simplify SUMMARY.md
* Remove sections whose contents don't exist.
* Move supplementary or/and out-dated documentations to Appendix.
  - Add notes in example_usage.md

BUG=b:199874828
TEST=run `mdbook build` in /docs/book/

Change-Id: Id9d3e90df40fdd138d6c3a39066c5352ec66c41d
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3159886
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
2021-09-20 12:45:42 +00:00
Zach Reizner
9c9fd5fcf5 book: add features chapter
TEST=mdbook docs/book
BUG=None

Change-Id: I1a9c0553e801c293b42fd3f2f4c7b03357cb6f29
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2991093
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
2021-07-01 16:28:33 +00:00
Zach Reizner
7a96510dcd book: add mermaid-js support
TEST=mdbook docs/book
BUG=None

Change-Id: I63c487e3718ed47f7084b211fa398422b8b571fa
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2991090
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
2021-07-01 16:28:32 +00:00
Zach Reizner
81f717b152 book: add sandboxing chapters
BUG=None
TEST=mdbook docs/book

Change-Id: Idadd7c807ea37a27cfdc90cb1280762e98253ea2
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2991089
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
2021-07-01 16:28:31 +00:00
Zach Reizner
c663173cae book: add initial book using mdbook
This change adds a document that was already written, but never
published before. Also, the summary includes a skeleton of chapters to
be filled in by future changes.

TEST=mdbook build docs/book
BUG=None

Change-Id: If1d6e295b6d5a639f728f5de0df73de094399166
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2982861
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Dennis Kempin <denniskempin@google.com>
2021-07-01 16:28:29 +00:00