No description
Find a file
Tatsuyuki Ishi 7a4c220485 media: ffmpeg: Free AvPacket through av_free_packet.
We used to unref the owned AVBufferRef manually but this is actually
handled by ffmpeg if you call the right destructor for AVPacket.

Do that, remove our internal ownership handling for AvPacket and add a
unit test to confirm we don't leak memory.

BUG=None
TEST=cargo test -p ffmpeg &&
     cargo test --features "video-decoder,ffmpeg" -p devices video

Change-Id: I2fbe1c12568ceca0c51013c789c30d6b78059e00
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3813254
Reviewed-by: Alexandre Courbot <acourbot@chromium.org>
Tested-by: Tatsuyuki Ishi <ishitatsuyuki@google.com>
Commit-Queue: Tatsuyuki Ishi <ishitatsuyuki@google.com>
2022-08-08 05:34:44 +00:00
.cargo crosvm: Fix cross-compile in dev container 2022-07-19 17:07:49 +00:00
.devcontainer tools: enable search feature for mdbook 2022-07-29 21:16:21 +00:00
.github github: update contributing link 2022-07-29 22:54:01 +00:00
aarch64 x86_64: add new option enable-hwp to expose HWP feature to guests 2022-08-05 20:33:12 +00:00
acpi_tables Reformat imports 2022-07-28 00:15:50 +00:00
anti_tamper crosvm: upstream windows src 2022-07-19 20:58:59 +00:00
arch x86_64: add new option enable-hwp to expose HWP feature to guests 2022-08-05 20:33:12 +00:00
argh_helpers crosvm: resync crosvm windows 2022-07-29 20:56:41 +00:00
base base/src: Add tests to Unix Tube 2022-08-04 20:49:01 +00:00
bin Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
bit_field Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
broker_ipc Reformat imports 2022-07-28 00:15:50 +00:00
ci/kokoro ci: skip choco checksum 2022-07-13 17:21:48 +00:00
common Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
cros_async devices: support balloon free-page reporting 2022-08-03 15:56:01 +00:00
crosvm-fuzz Reformat imports 2022-07-28 00:15:50 +00:00
crosvm_control crosvm: update book and doc links to crosvm.dev 2022-07-29 22:54:01 +00:00
crosvm_plugin Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
devices virtio: video: decoder: ffmpeg: use zero-copy for input buffers 2022-08-05 10:59:13 +00:00
disk Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
docs/book Revert "crosvm: Embed seccomp filters into binary" 2022-08-05 07:20:52 +00:00
fuse Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
gpu_display Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
hypervisor x86_64: add new option enable-hwp to expose HWP feature to guests 2022-08-05 20:33:12 +00:00
infra Roll recipe dependencies (trivial). 2022-08-08 03:19:54 +00:00
integration_tests integration_tests: Simple backwards compatibility test 2022-08-02 17:32:50 +00:00
io_uring Reformat imports 2022-07-28 00:15:50 +00:00
kernel_cmdline Reformat imports 2022-07-28 00:15:50 +00:00
kernel_loader Reformat imports 2022-07-28 00:15:50 +00:00
kvm Reformat imports 2022-07-28 00:15:50 +00:00
kvm_sys Reformat imports 2022-07-28 00:15:50 +00:00
libcras_stub crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
linux_input_sys Reformat imports 2022-07-28 00:15:50 +00:00
logo README: Use PNG logo image 2021-10-29 01:56:23 +00:00
media media: ffmpeg: Free AvPacket through av_free_packet. 2022-08-08 05:34:44 +00:00
metrics crosvm: resync crosvm windows 2022-07-29 20:56:41 +00:00
net_sys Reformat imports 2022-07-28 00:15:50 +00:00
net_util Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
power_monitor Reformat imports 2022-07-28 00:15:50 +00:00
protos Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
qcow_utils Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
resources resources: optimize region coalescing 2022-08-03 02:09:50 +00:00
rutabaga_gfx Reformat imports 2022-07-28 00:15:50 +00:00
seccomp crosvm: add block support to "devices" command 2022-08-04 04:00:31 +00:00
serde_keyvalue Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
src x86_64: configure MSRs needed by intel_pstate in initramfs 2022-08-05 21:40:33 +00:00
system_api_stub crosvm: migrate to Rust 2021 edition 2022-03-09 01:16:03 +00:00
tests Reformat imports 2022-07-28 00:15:50 +00:00
third_party crosvm: Fix clippy related warnings 2022-07-29 17:49:31 +00:00
tools crosvm: build crosvm on windows 2022-08-04 03:19:02 +00:00
tpm2 Reformat imports 2022-07-28 00:15:50 +00:00
tpm2-sys tpm2-sys: build libtpm2 with -Wno-error 2022-07-28 00:26:00 +00:00
tracing tracing: Add noop tracing 2022-06-16 21:13:55 +00:00
tube_transporter Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
usb_sys Reformat imports 2022-07-28 00:15:50 +00:00
usb_util Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
vfio_sys Revert "direct_irq: Add support for host wakeup capable IRQs" 2022-05-19 14:28:46 +00:00
vhost Reformat imports 2022-07-28 00:15:50 +00:00
virtio_sys Reformat imports 2022-07-28 00:15:50 +00:00
vm_control don't log Ok in client 2022-08-04 12:18:41 +00:00
vm_memory Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
win_audio Remove redundant {self} imports 2022-08-01 21:27:54 +00:00
win_util Reformat imports 2022-07-28 00:15:50 +00:00
x86_64 x86_64: configure MSRs needed by intel_pstate in initramfs 2022-08-05 21:40:33 +00:00
.dockerignore add docker supported builds and tests 2019-05-15 13:36:19 -07:00
.gitignore infra: Initial setup of linux pre/post-submit builders 2022-05-24 23:13:13 +00:00
.gitmodules Switch to submodules based workflow 2021-08-05 18:32:32 +00:00
.rustfmt.toml rustfmt, win_util: update to 2021 edition 2022-05-31 23:35:02 +00:00
ARCHITECTURE.md arch: allocate reserved PCI addresses first 2022-08-01 18:57:44 +00:00
Cargo.toml Revert "crosvm: Embed seccomp filters into binary" 2022-08-05 07:20:52 +00:00
CONTRIBUTING.md contributing: fix "uploaad" typo 2022-08-01 23:30:44 +00:00
LICENSE add LICENSE and README 2017-04-17 14:06:21 -07:00
navbar.md crosvm: update book and doc links to crosvm.dev 2022-07-29 22:54:01 +00:00
OWNERS OWNERS: Add comments 2022-07-05 10:34:14 +00:00
PRESUBMIT.cfg Switch main crosvm repo 2022-07-14 17:58:26 +00:00
README.chromeos.md crosvm: update book and doc links to crosvm.dev 2022-07-29 22:54:01 +00:00
README.md crosvm: update book and doc links to crosvm.dev 2022-07-29 22:54:01 +00:00
run_tests Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
rust-toolchain rust-toolchain: update to 1.60.0 2022-07-28 17:46:00 +00:00
setup_cros_cargo.sh Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
test_all Deprecate old dev tooling scripts 2021-11-02 22:23:03 +00:00
unblocked_terms.txt unblocked_terms.txt: clean up trivial cases 2021-04-26 20:32:38 +00:00

crosvm - The Chrome OS Virtual Machine Monitor

crosvm is a virtual machine monitor (VMM) based on Linuxs KVM hypervisor, with a focus on simplicity, security, and speed. crosvm is intended to run Linux guests, originally as a security boundary for running native applications on the Chrome OS platform. Compared to QEMU, crosvm doesnt emulate architectures or real hardware, instead concentrating on paravirtualized devices, such as the virtio standard.

crosvm is currently used to run Linux/Android guests on Chrome OS devices.

Logo