Getting Started Developing KUnit

Setting Up Your Work Environment

Follow the instructions at Using KUnit.

Familiarize Yourself with KUnit’s Design

KUnit’s design is discussed in the KUnit Design section.

Contributing to code in the Linux kernel

Please follow the guide in the Linux kernel: https://www.kernel.org/doc/html/latest/#introduction-to-kernel-development

In addition, remember to CC kunit-dev@googlegroups.com and linux-kselftest@vger.kernel.org.

Contributing to code outside of the Linux kernel

This section is for contributing code to repos that live outside of https://git.kernel.org.

Why is there a distinction?

The Linux kernel has been around a lot longer than KUnit, and thus has rules that we have no say on. However, any code that lives outside of the kernel is managed by Google; it’s open source and everyone has equal right to it, but because it is under the Google umbrella and not the Linux Foundation’s umbrella it means that there are certain rules we have to follow in one place, and different rules in the other.

The details are not important, all you have to know is that if you send code to the Linux kernel you should follow the rules above, and if you are contributing to any other KUnit repos, you should follow the rules here.

If you still have confusion, feel free to reach out to us.

Sign the Contributor License Agreement

For any contributions not sent directly to the Linux kernel via the Linux kernel mailing lists, we require contributors to sign our Contributor License Agreement (CLA).

You may sign our CLA here: https://cla.developers.google.com/

Note

Your company may already have a CLA on file with Google.

Submitting Changes

We use Gerrit for all non-upstream code reviews.

In order for Gerrit to accept your change, you must first make sure your commit messages are formatted correctly. It should have a:

Now you are ready to send your change for review:

git push -u origin HEAD:refs/for/master

For more information on submitting changes through Gerrit, please see the following section Gerrit Workflow.