crosvm/base
Colin Cross 1136e3b115 Fix compiling crosvm against x86_64-unknown-linux-musl
Fix some compatibility issues in crosvm to allow it compile against
musl libc:

- Ioctl numbers are ints like bionic, not unsigned long like glibc.
- The sched_param struct has extra fields that must be initialized, zero
  initialize the whole struct.
- libc::pthread_t is void* and doesn't match std::os::unix:🧵:RawPthread,
  it needs a cast.
- Some msghdr and cmsghdr fields are u32 instead of usize.
- cmsghdr has an extra __pad1 fields that must be initialized, zero initialize
  the whole struct.
- msghdr has private __pad1 and __pad2 fields that cannot be initialized,
  zero initialize the whole struct.

Bug: 216192129
Test: m USE_HOST_MUSL=true crosvm
Change-Id: I0652148e09b9a4d167801b002036ec5a575d3bb4
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3651504
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Commit-Queue: Daniel Verkamp <dverkamp@chromium.org>
2022-05-23 21:47:12 +00:00
..
base_poll_token_derive Refactoring: Copy sys_util(_core) into base 2022-03-21 19:52:56 +00:00
src Fix compiling crosvm against x86_64-unknown-linux-musl 2022-05-23 21:47:12 +00:00
.build_test_serial Refactoring: Move common/base into base 2022-03-17 00:01:27 +00:00
Cargo.toml crosvm: rework logging 2022-05-23 21:11:49 +00:00