Skip to content

feat(qemu): Feature for enabling virtfs - #3829

Open
langston-barrett wants to merge 1 commit into
AFLplusplus:mainfrom
GaloisInc:virtfs
Open

feat(qemu): Feature for enabling virtfs#3829
langston-barrett wants to merge 1 commit into
AFLplusplus:mainfrom
GaloisInc:virtfs

Conversation

@langston-barrett

Copy link
Copy Markdown
Contributor

Description

Fixes #3824.

Checklist

  • I have run ./scripts/precommit.sh and addressed all comments

^ this failed for me with a message about openssl

@domenukk

Copy link
Copy Markdown
Member
error: features "usermode" and "systemmode" cannot be used together
  --> crates/libafl_qemu/libafl_qemu_sys/build_linux.rs:11:13
   |
11 |             compile_error!(concat!("features \"", $first, "\" and \"", $rest, "\" cannot be used together"));
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
27 |     assert_unique_feature!("usermode", "systemmode");
   |     ------------------------------------------------ in this macro invocation
   |
   = note: this error originates in the macro `assert_unique_feature

probably happens because some --all-features thing enables usermode while you enable systemmode here...

@rmalmain maybe it would be a good idea to have usermode as default and systemmode as feature - that way we have one less exclusive feature flag?

@domenukk

Copy link
Copy Markdown
Member
  --> crates/libafl_qemu/libafl_qemu_sys/build_linux.rs:11:13
   |
11 |             compile_error!(concat!("features \"", $first, "\" and \"", $rest, "\" cannot be used together"));
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
27 |     assert_unique_feature!("usermode", "systemmode");
   |     ------------------------------------------------ in this macro invocation
   |
   = note: this error orig

is this part of our CI or due to this PR?

@Aditya30ag

Copy link
Copy Markdown
Contributor

Looked into the CI failure I don't think it's caused by this PR. virtfs declares systemmode the same way slirp and intel_pt already do, so an --all-features-style job should already be hitting the same usermode/systemmode conflict on those. This looks like a pre-existing gap in the feature-exclusion list for that job, not something new here virtfs just needs to be added wherever slirp/intel_pt are already excluded.

Confirmed in isolation this builds fine:

cargo build -p libafl_qemu --no-default-features --features x86_64,systemmode,virtfs

Separately: the OpenSSL precommit failure looks like a local toolchain issue, unrelated to this diff.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

qemu: Cargo feature to support virtfs

3 participants