Skip to content

Conversation

@vesalvojdani
Copy link
Member

@vesalvojdani vesalvojdani commented Mar 5, 2022

Since we can't lift the benchmarks directly (#3), we could try to extract the race commits from the original sources. Here are the relevant commits:

(The following are not publicly available: torvalds/linux@2e4ce49, torvalds/linux@883f30e)

Preparing the include files

Most of the include files remain the same, but some are generated with the commands make defconfig && make prepare, and one has to make some tweaks for this to work with newer versions of gcc:

  • disable -pie.
  • Apply our usual hack of copying compiler-gcc4.h to whatever version is currently used.
  • Disable use of asm goto keyword.
  • All such tweaks (except the copying of the compiler header), i.e., the output of git diff w.r.t. the original kernel sources should be added to each benchmark (adaptations.patch)

At the moment, I have been using goblint -v to get the preprocessing command and then ran that with -M to get the list of included files and then copied all those files here. Maybe there is a better way than to just upload them all here. The only files different from the kernel repo are in the generated subdirectories.

@sim642
Copy link
Member

sim642 commented Mar 5, 2022

At the moment, I have been using goblint -v to get the preprocessing command and then ran that with -M to get the list of included files and then copied all those files here.

The json-messages output should also contain a list of all the files involved. That might be easier to automate as well if desired.

@sim642 sim642 added the new benchmark New benchmark to analyze label Mar 7, 2022
@sim642 sim642 changed the title Ldv commits races Original benchmarks from ldv-commits-races Mar 7, 2022
@vesalvojdani vesalvojdani marked this pull request as ready for review March 30, 2022 09:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new benchmark New benchmark to analyze

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants